Eine Achse
Teil des Abschnitts Eingabe und Bewegung der Godot-Journey von Coddy. Lektion 3 von 28.
Links und rechts sind die beiden Enden einer Linie, einer Achse. Input.get_axis() prüft beide Aktionen und gibt eine Zahl zurück:
-1, solange die erste Aktion gehalten wird (links)1, solange die zweite gehalten wird (rechts)0, wenn keine oder beide gehalten werden
Multipliziere diese Zahl mit der Geschwindigkeit, und der Held bewegt sich ohne if in die richtige Richtung:
var speed = 300
func _process(delta):
var direction = Input.get_axis("move_left", "move_right")
position.x += direction * speed * deltaWenn direction -1 ist, wird x kleiner und der Held bewegt sich nach links. Wenn es 0 ist, bleibt der Held stehen.
Aufgabe
EinfachBewege den Helden mit einer Eingabezeile nach links und rechts.
- Speichere in
_process()Input.get_axis("move_left", "move_right")invar direction. - Bewege
position.xpro Sekunde umdirection * speed.
Drücke „Spielen“: Mit den Pfeiltasten bewegt sich der Held mit 300 Pixeln pro Sekunde, und wenn du beide gleichzeitig drückst, bleibt er stehen. Drücke dann „Prüfen“.
Probier es selbst
extends Node2D
var speed = 300
func _process(delta):
pass
Alle Lektionen in Eingabe und Bewegung
Übe selbstständig: Godot-Playground