Menu
CoddyTech

Avviare il motore

Fa parte della sezione Progetti del percorso Godot di Coddy. Lezione 11 di 33.

Su fa accendere il motore e spinge la nave nella direzione indicata dalla prua. Vector2.UP è (0, -1). rotated(rotation) ruota quella freccia in base alla rotazione della nave:

if Input.is_action_pressed("move_up"):
	velocity += Vector2.UP.rotated(rotation) * THRUST * delta
position += velocity * delta

Il motore modifica la velocità, non la posizione. Quando lasci il tasto Su, la nave continua a scivolare. Per fermarti, gira e spingi nella direzione opposta.

La nave ha un nodo figlio Flame nascosto. Mostralo mentre il motore è acceso: $Flame.visible = Input.is_action_pressed("move_up").

challenge icon

Sfida

Medio
  1. Aggiungi const THRUST = 300.
  2. Mentre tieni premuto il tasto Su, aggiungi Vector2.UP.rotated(rotation) * THRUST * delta alla velocity della nave.
  3. Sposta la nave di velocity * delta a ogni fotogramma, che il tasto sia premuto o no.
  4. Mostra $Flame solo mentre tieni premuto il tasto Su.

Provalo tu

extends CharacterBody2D

const TURN_SPEED = 4.0

func _physics_process(delta):
	rotation += Input.get_axis("move_left", "move_right") * TURN_SPEED * delta
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Progetti

Esercitati da solo: Playground Godot