Correre e saltare
Fa parte della sezione Input e movimento del percorso Godot di Coddy. Lezione 15 di 28.
La corsa modifica solo velocity.x. La gravità e il salto modificano solo velocity.y. Quindi imposta separatamente le due componenti:
velocity.x = Input.get_axis("move_left", "move_right") * speedNon impostare l'intera velocità, come in questo caso:
velocity = Vector2(Input.get_axis("move_left", "move_right") * speed, 0)Quella riga imposta velocity.y a 0 a ogni fotogramma. Azzera la velocità di caduta e il salto, quindi l'eroe fluttua.
Sfida
FacileFai correre l’eroe mentre cade e salta.
- Sopra
move_and_slide(), impostavelocity.xsuInput.get_axis("move_left", "move_right")moltiplicato perspeed. - Lascia
velocity.yalla gravità e al salto.
Premi «Gioca»: l’eroe corre a 220 pixel al secondo e può saltare verso l’alto e a destra. Poi premi «Verifica».
Provalo tu
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()
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