Courir et sauter
Fait partie de la section Entrées et déplacements du Journey Godot de Coddy. Leçon 15 sur 28.
Le déplacement ne modifie que velocity.x. La gravité et le saut ne modifient que velocity.y. Sépare donc les deux composantes :
velocity.x = Input.get_axis("move_left", "move_right") * speedNe définis pas toute la vitesse comme ceci :
velocity = Vector2(Input.get_axis("move_left", "move_right") * speed, 0)Cette ligne définit velocity.y à 0 à chaque image. Elle efface la vitesse de chute et le saut, et le héros flotte alors.
Défi
FacileFais courir le héros vers la gauche et la droite à la speed tout en continuant à tomber et à sauter. Définis uniquement velocity.x.
Essayez vous-même
extends CharacterBody2D
var speed = 220
var gravity = 1000
var jump_velocity = -500
func _physics_process(delta):
velocity.y += gravity * delta
if Input.is_action_just_pressed("jump") and is_on_floor():
velocity.y = jump_velocity
move_and_slide()
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Entrées et déplacements
2CharacterBody2D
CharacterBody2DSe déplacer avec une vélocitéLes murs vous arrêtentSe déplacer partoutDiagonales équilibrées5Projet : Héros de jeu de plateforme
Héros : CourirHéros : Sauter3Gravité et saut
Tomber sous l’effet de la gravitéSauter vers le hautUniquement depuis le solCourir et sauterSaut variableDouble sautEntraînez-vous par vous-même : Playground Godot