#5 développement du mouvement du robot et d'une caméra qui le suit
This commit is contained in:
parent
287a7a161f
commit
b60c445592
6
entities/camera/camera.tscn
Normal file
6
entities/camera/camera.tscn
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
[gd_scene load_steps=2 format=3 uid="uid://dj7gp3crtg2yt"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://d1nsr56bh1a1y" path="res://entities/camera/scripts/camera.gd" id="1_y2wxd"]
|
||||||
|
|
||||||
|
[node name="Camera" type="Camera2D"]
|
||||||
|
script = ExtResource("1_y2wxd")
|
||||||
11
entities/camera/scripts/camera.gd
Normal file
11
entities/camera/scripts/camera.gd
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
extends Camera2D
|
||||||
|
class_name Camera
|
||||||
|
|
||||||
|
const LERP_WEIGHT = 0.9
|
||||||
|
|
||||||
|
@export var following : Node2D
|
||||||
|
|
||||||
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||||
|
func _process(delta):
|
||||||
|
if following:
|
||||||
|
global_position = following.global_position.lerp(global_position, LERP_WEIGHT)
|
||||||
1
entities/camera/scripts/camera.gd.uid
Normal file
1
entities/camera/scripts/camera.gd.uid
Normal file
@ -0,0 +1 @@
|
|||||||
|
uid://d1nsr56bh1a1y
|
||||||
@ -1,9 +1,18 @@
|
|||||||
[gd_scene load_steps=2 format=3 uid="uid://bgvbgeq46wee2"]
|
[gd_scene load_steps=4 format=3 uid="uid://bgvbgeq46wee2"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://das7twcy5153p" path="res://entities/player/scripts/player.gd" id="1_abrql"]
|
||||||
[ext_resource type="Texture2D" uid="uid://c7ff87jniga5m" path="res://entities/player/assets/sprites/robot.png" id="1_symyc"]
|
[ext_resource type="Texture2D" uid="uid://c7ff87jniga5m" path="res://entities/player/assets/sprites/robot.png" id="1_symyc"]
|
||||||
|
|
||||||
[node name="Player" type="Node2D"]
|
[sub_resource type="CircleShape2D" id="CircleShape2D_sglur"]
|
||||||
|
radius = 38.0526
|
||||||
|
|
||||||
[node name="Frame01" type="Sprite2D" parent="."]
|
[node name="Player" type="CharacterBody2D"]
|
||||||
scale = Vector2(0.179297, 0.179297)
|
script = ExtResource("1_abrql")
|
||||||
|
|
||||||
|
[node name="Sprite" type="Sprite2D" parent="."]
|
||||||
|
position = Vector2(2, -20)
|
||||||
|
scale = Vector2(0.084375, 0.084375)
|
||||||
texture = ExtResource("1_symyc")
|
texture = ExtResource("1_symyc")
|
||||||
|
|
||||||
|
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||||
|
shape = SubResource("CircleShape2D_sglur")
|
||||||
|
|||||||
14
entities/player/scripts/player.gd
Normal file
14
entities/player/scripts/player.gd
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
extends CharacterBody2D
|
||||||
|
class_name Player
|
||||||
|
|
||||||
|
@export var speed = 400
|
||||||
|
|
||||||
|
func get_input():
|
||||||
|
var input_direction : Vector2 = Input.get_vector("move_left", "move_right", "move_up", "move_down")
|
||||||
|
velocity = input_direction * speed
|
||||||
|
if input_direction.x:
|
||||||
|
$Sprite.flip_h = (input_direction.x < 0)
|
||||||
|
|
||||||
|
func _physics_process(_delta):
|
||||||
|
get_input()
|
||||||
|
move_and_slide()
|
||||||
1
entities/player/scripts/player.gd.uid
Normal file
1
entities/player/scripts/player.gd.uid
Normal file
@ -0,0 +1 @@
|
|||||||
|
uid://das7twcy5153p
|
||||||
@ -14,3 +14,30 @@ config/name="Seeding Planets"
|
|||||||
run/main_scene="uid://c5bruelvqbm1k"
|
run/main_scene="uid://c5bruelvqbm1k"
|
||||||
config/features=PackedStringArray("4.4", "Forward Plus")
|
config/features=PackedStringArray("4.4", "Forward Plus")
|
||||||
config/icon="res://icon.svg"
|
config/icon="res://icon.svg"
|
||||||
|
|
||||||
|
[input]
|
||||||
|
|
||||||
|
move_right={
|
||||||
|
"deadzone": 0.2,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194320,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":100,"location":0,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
move_left={
|
||||||
|
"deadzone": 0.2,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194319,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":113,"location":0,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
move_up={
|
||||||
|
"deadzone": 0.2,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":122,"location":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194320,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
move_down={
|
||||||
|
"deadzone": 0.2,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":115,"location":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194322,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|||||||
10
readme.md
10
readme.md
@ -78,11 +78,11 @@ Pour ajouter un ou plusieurs fichiers ou modifier du code dans le projet, suivez
|
|||||||
2. Après chaque modification conséquente, créer un ou plusieurs commits. Les noms des commits sont écrits en français et peuvent commencer par l'identifiant du ticket concernant la modification (exemple: `#5 augmentation de la distance du saut`)
|
2. Après chaque modification conséquente, créer un ou plusieurs commits. Les noms des commits sont écrits en français et peuvent commencer par l'identifiant du ticket concernant la modification (exemple: `#5 augmentation de la distance du saut`)
|
||||||
3. Pousser votre branche (`git push` dans un terminal ou via interface git)
|
3. Pousser votre branche (`git push` dans un terminal ou via interface git)
|
||||||
4. Créer une demande de modification dans Gitea en suivant [ce lien](https://git.zacharie-guet.fr/zacharie/seeding-planets/pulls), cliquez sur Demande d'ajout et renseignez comme suit
|
4. Créer une demande de modification dans Gitea en suivant [ce lien](https://git.zacharie-guet.fr/zacharie/seeding-planets/pulls), cliquez sur Demande d'ajout et renseignez comme suit
|
||||||
- Fusionner dans `main`
|
- Fusionner dans `main`
|
||||||
- Tirer les modification depuis votre branche
|
- Tirer les modification depuis votre branche
|
||||||
- Cliquez sur "Nouvelle Demande d'ajout"
|
- Cliquez sur "Nouvelle Demande d'ajout"
|
||||||
- Editer le titre de la demande d'ajout ou laissez comme telle
|
- Editer le titre de la demande d'ajout ou laissez comme telle
|
||||||
- Cliquez sur sur "Créer une demande d'ajout"
|
- Cliquez sur sur "Créer une demande d'ajout"
|
||||||
5. Communiquez avec l'équipe sur cette demande d'ajout, et appliquer la si vous avez l'aval de tous le monde (ou du moins des concernés du changement), en cliquant sur "Rebaser et avancer rapidement"
|
5. Communiquez avec l'équipe sur cette demande d'ajout, et appliquer la si vous avez l'aval de tous le monde (ou du moins des concernés du changement), en cliquant sur "Rebaser et avancer rapidement"
|
||||||
|
|
||||||
> Pour actualiser votre dépôt local, replacez vous sur `main` et récupérer les nouvelles modifications
|
> Pour actualiser votre dépôt local, replacez vous sur `main` et récupérer les nouvelles modifications
|
||||||
|
|||||||
@ -1,12 +1,15 @@
|
|||||||
[gd_scene load_steps=3 format=3 uid="uid://c5bruelvqbm1k"]
|
[gd_scene load_steps=4 format=3 uid="uid://c5bruelvqbm1k"]
|
||||||
|
|
||||||
[ext_resource type="PackedScene" uid="uid://tsi5j1uxppa4" path="res://stages/planet/planet.tscn" id="1_pyidc"]
|
[ext_resource type="PackedScene" uid="uid://tsi5j1uxppa4" path="res://stages/planet/planet.tscn" id="1_pyidc"]
|
||||||
[ext_resource type="PackedScene" uid="uid://bgvbgeq46wee2" path="res://entities/player/player.tscn" id="2_vvh5c"]
|
[ext_resource type="PackedScene" uid="uid://bgvbgeq46wee2" path="res://entities/player/player.tscn" id="2_vvh5c"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://dj7gp3crtg2yt" path="res://entities/camera/camera.tscn" id="3_vvh5c"]
|
||||||
|
|
||||||
[node name="Root" type="Node2D"]
|
[node name="Root" type="Node2D"]
|
||||||
|
|
||||||
[node name="Planet" parent="." instance=ExtResource("1_pyidc")]
|
[node name="Planet" parent="." instance=ExtResource("1_pyidc")]
|
||||||
position = Vector2(543, 309)
|
|
||||||
|
|
||||||
[node name="Player" parent="." instance=ExtResource("2_vvh5c")]
|
[node name="Player" parent="." instance=ExtResource("2_vvh5c")]
|
||||||
position = Vector2(530, 270)
|
|
||||||
|
[node name="Camera" parent="." node_paths=PackedStringArray("following") instance=ExtResource("3_vvh5c")]
|
||||||
|
position = Vector2(2.22, 0)
|
||||||
|
following = NodePath("../Player")
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user