Menu
CoddyTech

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.

challenge icon

Sfida

Facile

Fai saltare l'eroe.

  1. Tra la riga della gravità e move_and_slide(), aggiungi un if per Input.is_action_just_pressed("jump").
  2. Al suo interno, imposta velocity.y su jump_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

Esercitati da solo: Playground Godot