Menu
CoddyTech

Un asse

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

Sinistra e destra sono le due estremità di una linea, un asse. Input.get_axis() controlla entrambe le azioni e restituisce un numero:

  • -1 mentre è premuta la prima azione (sinistra)
  • 1 mentre è premuta la seconda (destra)
  • 0 quando non è premuta nessuna delle due, oppure entrambe

Moltiplica quel numero per la velocità e l'eroe si muove nella direzione giusta senza if:

var speed = 300

func _process(delta):
	var direction = Input.get_axis("move_left", "move_right")
	position.x += direction * speed * delta

Quando direction è -1, x diminuisce e l'eroe si muove a sinistra. Quando è 0, l'eroe resta fermo.

challenge icon

Sfida

Facile

Fai camminare l’eroe a sinistra e a destra con una sola riga di input.

  1. In _process(), memorizza Input.get_axis("move_left", "move_right") in var direction.
  2. Sposta position.x di direction * speed al secondo.

Premi «Gioca»: le frecce fanno camminare l’eroe a 300 pixel al secondo, mentre premendole entrambe contemporaneamente lo mantieni fermo. Poi premi «Verifica».

Provalo tu

extends Node2D

var speed = 300

func _process(delta):
	pass

Tutte le lezioni di Input e movimento

Esercitati da solo: Playground Godot