Beide Achsen begrenzen
Teil des Abschnitts Eingabe und Bewegung der Godot-Journey von Coddy. Lektion 22 von 28.
Ein Held in der Draufsicht kann den Bildschirm an allen vier Seiten verlassen. Ein Vector2 hat eine eigene clamp-Methode, die beide Zahlen im Wertebereich hält:
position = position.clamp(Vector2(16, 16), Vector2(624, 344))Der erste Vektor ist die obere linke Ecke. Der zweite ist die untere rechte Ecke. Jede Zahl von position bleibt zwischen den entsprechenden Zahlen der beiden Ecken.
Der Held ist ein Kreis mit einem Durchmesser von etwa 32 Pixeln. Daher bleibt seine Mitte jeweils 16 Pixel von den Rändern des 640 × 360 Pixel großen Bildschirms entfernt.
Aufgabe
EinfachHalte den Helden an allen vier Seiten auf dem Bildschirm.
- Setze nach
move_and_slide()positionmitposition.clamp(). - Begrenze den Wert zwischen
Vector2(16, 16)undVector2(624, 344).
Drücke auf „Spielen“ und laufe in eine Ecke: Der Held bleibt dort vollständig auf dem Bildschirm. Drücke dann auf „Prüfen“.
Probier es selbst
extends CharacterBody2D
var speed = 200
func _physics_process(delta):
velocity = Input.get_vector("move_left", "move_right", "move_up", "move_down") * speed
move_and_slide()
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Eingabe und Bewegung
1Eingabeaktionen
Drücken zum BewegenLinks und rechtsEine AchseVier RichtungenGerade erst gedrücktNicht behandelte Eingabe4Flüssige Bewegung
Langsam beschleunigenReibungIn Bewegungsrichtung schauenAuf den Bildschirm begrenzenBeide Achsen begrenzenÜbe selbstständig: Godot-Playground