Menu
CoddyTech

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_velocity

Un 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.

challenge icon

Sfida

Facile

Fai saltare l’eroe oltre la fossa.

  1. Aggiungi var jump_velocity = -500 in cima.
  2. Dopo la riga della gravità, imposta velocity.y su jump_velocity quando jump viene premuto e l’eroe is_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