Den Antrieb zünden
Teil des Abschnitts Projekte der Godot-Journey von Coddy. Lektion 11 von 33.
Die Pfeiltaste nach oben zündet den Motor und schiebt das Raumschiff in die Richtung, in die seine Spitze zeigt. Vector2.UP ist (0, -1). rotated(rotation) dreht diesen Pfeil um denselben Winkel, um den sich das Raumschiff gedreht hat:
if Input.is_action_pressed("move_up"):
velocity += Vector2.UP.rotated(rotation) * THRUST * delta
position += velocity * deltaDer Motor verändert die Geschwindigkeit, nicht die Position. Wenn du die Pfeiltaste nach oben loslässt, driftet das Raumschiff weiter. Um anzuhalten, dreh dich um und gib in die andere Richtung Schub.
Das Raumschiff hat ein verborgenes Flame-Kind. Blende es ein, während der Motor läuft: $Flame.visible = Input.is_action_pressed("move_up").
Aufgabe
Mittel- Füge
const THRUST = 300hinzu. - Solange die Aufwärts-Taste gedrückt wird, addiere
Vector2.UP.rotated(rotation) * THRUST * deltazurvelocitydes Schiffs. - Bewege das Schiff in jedem Frame um
velocity * delta, unabhängig davon, ob eine Taste gedrückt wird oder nicht. - Zeige
$Flamenur an, solange die Aufwärts-Taste gedrückt wird.
Probier es selbst
extends CharacterBody2D
const TURN_SPEED = 4.0
func _physics_process(delta):
rotation += Input.get_axis("move_left", "move_right") * TURN_SPEED * delta
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Projekte
2Projekt: Asteroiden-Shooter
Das Schiff drehenDen Antrieb zündenÜbe selbstständig: Godot-Playground