Menu
CoddyTech

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") * speed

Setze 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.

challenge icon

Aufgabe

Einfach

Lass den Helden laufen, während er fällt und springt.

  1. Setze oberhalb von move_and_slide() velocity.x auf Input.get_axis("move_left", "move_right") mal speed.
  2. Überlasse velocity.y der 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

Übe selbstständig: Godot-Playground