Menu
CoddyTech

Solo dal pavimento

Fa parte della sezione Input e movimento del percorso Godot di Coddy. Lezione 14 di 28.

L'eroe della lezione precedente può saltare di nuovo in aria, tutte le volte che vuoi. Dovrebbe saltare solo quando si trova su qualcosa.

is_on_floor() è true quando l'ultimo move_and_slide() ha lasciato il corpo su un pavimento. In aria è false.

and unisce due condizioni. L'if viene eseguito solo quando entrambe sono vere:

if Input.is_action_just_pressed("jump") and is_on_floor():
	velocity.y = jump_velocity
challenge icon

Sfida

Facile

Fai in modo che l’eroe salti solo da terra.

  1. Aggiungi una seconda condizione all’if del salto con and.
  2. Imposta la condizione su is_on_floor().

Premi «Gioca» e premi due volte la barra spaziatrice: la seconda pressione, mentre sei in aria, non fa nulla. Poi premi «Verifica».

Provalo tu

extends CharacterBody2D

var gravity = 1000
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()

Tutte le lezioni di Input e movimento

Esercitati da solo: Playground Godot