Menu
CoddyTech

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 * delta

Wenn direction -1 ist, wird x kleiner und der Held bewegt sich nach links. Wenn es 0 ist, bleibt der Held stehen.

challenge icon

Aufgabe

Einfach

Bewege den Helden mit einer Eingabezeile nach links und rechts.

  1. Speichere in _process() Input.get_axis("move_left", "move_right") in var direction.
  2. Bewege position.x pro Sekunde um direction * 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