Menu
CoddyTech

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") * speed

Ne définis pas toute la vélocité, 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, donc le héros flotte.

challenge icon

Défi

Facile

Fais courir le héros pendant qu’il tombe et saute.

  1. Au-dessus de move_and_slide(), définis velocity.x sur Input.get_axis("move_left", "move_right") multiplié par speed.
  2. Laisse velocity.y gérer la gravité et le saut.

Appuie sur « Jouer » : le héros court à 220 pixels par seconde et peut sauter vers le haut et vers la droite. Ensuite, appuie sur « Vérifier ».

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()

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

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