Mit Geschwindigkeit laufen
Teil des Abschnitts Eingabe und Bewegung der Godot-Journey von Coddy. Lektion 8 von 28.
Um mit den Tasten zu laufen, setze die Geschwindigkeit in jedem Physik-Frame mit Input.get_axis() und bewege dich dann:
var speed = 200
func _physics_process(delta):
velocity.x = Input.get_axis("move_left", "move_right") * speed
move_and_slide()Wenn du rechts gedrückt hältst, ist velocity.x 200. Wenn du links gedrückt hältst, ist es -200. Wenn du keine Taste gedrückt hältst, ist es 0, sodass der Held stehen bleibt, wenn du die Taste loslässt.
Bei einem Node2D hast du position.x += direction * speed * delta geschrieben. Bei einem Körper ist velocity die Geschwindigkeit selbst. Wenn du sie mit delta multiplizierst, wäre der Held 60-mal zu langsam.
Aufgabe
EinfachLass den Helden mithilfe seiner Geschwindigkeit nach links und rechts gehen.
- Setze oberhalb von
move_and_slide()velocity.xaufInput.get_axis("move_left", "move_right")multipliziert mitspeed. - Lass
deltaweg:move_and_slide()wendet es für dich an.
Drücke „Spielen“ und halte eine Pfeiltaste gedrückt: Der Held geht mit 200 Pixeln pro Sekunde und bleibt stehen, wenn du die Taste loslässt. Klicke dann auf „Prüfen“.
Probier es selbst
extends CharacterBody2D
var speed = 200
func _physics_process(delta):
move_and_slide()
Alle Lektionen in Eingabe und Bewegung
2CharacterBody2D
CharacterBody2DMit Geschwindigkeit laufenWände halten dich aufÜberall laufenAusgewogene DiagonalenÜbe selbstständig: Godot-Playground