Héros : Courir en douceur
Fait partie de la section Entrées et déplacements du Journey Godot de Coddy. Leçon 25 sur 28.
Le héros démarre et s’arrête en une seule image. Faites-le accélérer avec acceleration et s’arrêter avec friction :
var direction = Input.get_axis("move_left", "move_right")
if direction == 0:
velocity.x = move_toward(velocity.x, 0, friction * delta)
else:
velocity.x = move_toward(velocity.x, direction * speed, acceleration * delta)Utilisez une acceleration de 1200 et une friction de 2400. Le héros atteint sa vitesse maximale en environ un cinquième de seconde, il a donc encore assez de place pour courir jusqu’au trou.
Défi
MoyenAjoute les variables acceleration (1200) et friction (2400). Lorsqu'une touche est maintenue enfoncée, accélère le héros vers direction * speed à l'aide de acceleration. Lorsqu'aucune touche n'est maintenue enfoncée, ralentis-le jusqu'à 0 à l'aide de friction.
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
velocity.x = Input.get_axis("move_left", "move_right") * speed
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 : SauterEntraînez-vous par vous-même : Playground Godot