Menu
CoddyTech

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") * speed

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

challenge icon

Sfida

Facile

Fai correre l’eroe mentre cade e salta.

  1. Sopra move_and_slide(), imposta velocity.x su Input.get_axis("move_left", "move_right") moltiplicato per speed.
  2. Lascia velocity.y alla 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

Esercitati da solo: Playground Godot