Laufen und springen
Teil des Abschnitts Eingabe und Bewegung der Godot-Journey von Coddy. Lektion 15 von 28.
Beim Laufen ändert sich nur velocity.x. Die Schwerkraft und der Sprung ändern nur velocity.y. Trenne also die beiden Komponenten voneinander:
velocity.x = Input.get_axis("move_left", "move_right") * speedSetze nicht die gesamte Geschwindigkeit, etwa so:
velocity = Vector2(Input.get_axis("move_left", "move_right") * speed, 0)Diese Zeile setzt velocity.y in jedem Frame auf 0. Dadurch werden die Fallgeschwindigkeit und der Sprung aufgehoben, sodass der Held schwebt.
Aufgabe
EinfachLass den Helden laufen, während er fällt und springt.
- Setze oberhalb von
move_and_slide()velocity.xaufInput.get_axis("move_left", "move_right")malspeed. - Überlasse
velocity.yder Schwerkraft und dem Sprung.
Drücke „Spielen“: Der Held läuft mit 220 Pixeln pro Sekunde und kann nach oben und rechts springen. Drücke dann „Prüfen“.
Probier es selbst
extends CharacterBody2D
var speed = 220
var gravity = 1000
var jump_velocity = -500
func _physics_process(delta):
velocity.y += gravity * delta
if Input.is_action_just_pressed("jump") and is_on_floor():
velocity.y = jump_velocity
move_and_slide()
Alle Lektionen in Eingabe und Bewegung
3Schwerkraft und Springen
Mit Schwerkraft fallenNach oben springenNur vom Boden ausLaufen und springenVariabler SprungDoppelsprungÜbe selbstständig: Godot-Playground