Saltare in alto
Fa parte della sezione Input e movimento del percorso Godot di Coddy. Lezione 13 di 28.
Per saltare, imposta velocity.y a una velocità elevata verso l'alto nel frame in cui il giocatore preme jump. L'alto corrisponde a un valore di y più basso, quindi il numero è negativo:
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()Non devi programmare la discesa. La gravità continua ad aggiungersi a velocity.y, quindi l'eroe rallenta mentre sale, si ferma al culmine e ricade.
Usa is_action_just_pressed, non is_action_pressed. Se il tasto resta premuto, la velocità verrebbe impostata a -500 a ogni frame e l'eroe volerebbe fuori dallo schermo.
Sfida
FacileFai saltare l'eroe.
- Tra la riga della gravità e
move_and_slide(), aggiungi unifperInput.is_action_just_pressed("jump"). - Al suo interno, imposta
velocity.ysujump_velocity.
Premi «Gioca» e premi la barra spaziatrice: l'eroe salta e atterra di nuovo, e tenere premuta la barra spaziatrice non lo fa volare. Poi premi «Verifica».
Provalo tu
extends CharacterBody2D
var gravity = 1000
var jump_velocity = -500
func _physics_process(delta):
velocity.y += gravity * delta
move_and_slide()
Tutte le lezioni di Input e movimento
3Gravità e salti
Cadere con la gravitàSaltare in altoSolo dal pavimentoCorrere e saltareSalto variabileDoppio saltoEsercitati da solo: Playground Godot