Eroe: saltare
Fa parte della sezione Input e movimento del percorso Godot di Coddy. Lezione 24 di 28.
La buca è larga 80 pixel. Senza saltare, l’eroe non può attraversarla. Aggiungi una variabile jump_velocity e un salto che funziona solo da terra:
var jump_velocity = -500
# in _physics_process, dopo la gravità:
if Input.is_action_just_pressed("jump") and is_on_floor():
velocity.y = jump_velocityUn salto dura circa un secondo. In quel tempo l’eroe corre per 220 pixel, molto più della larghezza della buca. Corri verso la buca e salta appena prima del bordo.
Sfida
FacileFai saltare l’eroe oltre la fossa.
- Aggiungi
var jump_velocity = -500in cima. - Dopo la riga della gravità, imposta
velocity.ysujump_velocityquandojumpviene premuto e l’eroeis_on_floor().
Premi «Gioca», corri e salta: l’eroe supera la fossa. Poi premi «Verifica».
Provalo tu
extends CharacterBody2D
var speed = 220
var gravity = 1000
func _physics_process(delta):
velocity.y += gravity * delta
velocity.x = Input.get_axis("move_left", "move_right") * speed
move_and_slide()
Tutte le lezioni di Input e movimento
Esercitati da solo: Playground Godot