Menu
CoddyTech

Sauter vers le haut

Fait partie de la section Entrées et déplacements du Journey Godot de Coddy. Leçon 13 sur 28.

Pour sauter, définis velocity.y à une grande vitesse vers le haut pendant la frame où le joueur appuie sur jump. Plus on monte, plus y est petit, donc le nombre est négatif :

var jump_velocity = -500

func _physics_process(delta):
	velocity.y += gravity * delta
	if Input.is_action_just_pressed("jump"):
		velocity.y = jump_velocity
	move_and_slide()

Tu n’as pas besoin de coder la descente. La gravité continue d’augmenter velocity.y, donc le héros ralentit en montant, s’arrête au sommet et retombe.

Utilise is_action_just_pressed, et non is_action_pressed. Si une touche restait enfoncée, la vitesse serait définie sur -500 à chaque frame, et le héros s’envolerait hors de l’écran.

challenge icon

Défi

Facile

Fais sauter le héros.

  1. Entre la ligne de gravité et move_and_slide(), ajoute un if pour Input.is_action_just_pressed("jump").
  2. À l’intérieur, définis velocity.y sur jump_velocity.

Appuie sur « Jouer » et sur la barre d’espace : le héros saute puis atterrit, et maintenir la barre d’espace ne le fait pas s’envoler. Ensuite, appuie sur « Vérifier ».

Essayez vous-même

extends CharacterBody2D

var gravity = 1000
var jump_velocity = -500

func _physics_process(delta):
	velocity.y += gravity * delta
	move_and_slide()

Toutes les leçons de Entrées et déplacements

Entraînez-vous par vous-même : Playground Godot