princess/saut du mur: prise en compte du feedback

avant jouer au clavier, c'était impossible. Voic les améliorations:

- une fois que le joueur a décidé de se coller au mur, on le laisse
  collé tant qut'il ne décide pas d'en partir volontairement.
- j'ai rajouté des ray_cast à la tête et aux pieds de chaque côté pour
  que l'on puisse continuer de wall jumper jusqu'au bout
- si au cours d'un dash ou d'un kick on s'écrase contre le mur, la
  princesse s'y colle toute seule.
- faire flèche du bas permet d'accélérer la chute.
This commit is contained in:
Thomas Lavocat
2023-05-11 19:35:30 +02:00
parent 2307fdd112
commit 6336909379
2 changed files with 56 additions and 12 deletions

View File

@@ -265,7 +265,7 @@ script = ExtResource("1_dkp7s")
FALLING_SPEED = 200
JUMPING_SPEED = 230
COYOTE_LENGTH = 7
COYOTE_GRAB_LENGTH = 10
COYOTE_GRAB_LENGTH = 14
WALK_INCR_AIR = 4
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
@@ -276,10 +276,30 @@ animation = &"jump_impulsion"
target_position = Vector2(-10, 0)
collision_mask = 16
[node name="wall_detect_left2" type="RayCast2D" parent="."]
position = Vector2(0, -19)
target_position = Vector2(-10, 0)
collision_mask = 16
[node name="wall_detect_left3" type="RayCast2D" parent="."]
position = Vector2(0, 24)
target_position = Vector2(-10, 0)
collision_mask = 16
[node name="wall_detect_right" type="RayCast2D" parent="."]
target_position = Vector2(14, 0)
collision_mask = 16
[node name="wall_detect_right2" type="RayCast2D" parent="."]
position = Vector2(0, -19)
target_position = Vector2(14, 0)
collision_mask = 16
[node name="wall_detect_right3" type="RayCast2D" parent="."]
position = Vector2(0, 24)
target_position = Vector2(14, 0)
collision_mask = 16
[node name="Camera2D" type="Camera2D" parent="."]
zoom = Vector2(2, 2)
position_smoothing_enabled = true