Menu
CoddyTech

Über den Rand fliegen

Teil des Abschnitts Projekte der Godot-Journey von Coddy. Lektion 13 von 36.

Gib eine Weile Schub, und das Schiff driftet vom Bildschirm. In diesem Spiel wird der Bildschirmrand übergangslos verbunden. Fliegst du rechts hinaus, kommst du links wieder herein. Fliegst du unten hinaus, kommst du oben wieder herein.

Schreibe für jede Kante ein if. Addiere oder subtrahiere die Breite des Bildschirms, damit das Schiff die Strecke beibehält, die es über die Kante hinausgeflogen ist:

if position.x < 0:
	position.x += 640
if position.x > 640:
	position.x -= 640

Mach dasselbe für y, mit der Höhe 360.

challenge icon

Aufgabe

Mittel

Lass das Raumschiff am Bildschirmrand auf der anderen Seite wieder erscheinen.

  1. Nachdem sich das Raumschiff bewegt hat und über den linken oder rechten Rand (0 und 640) hinausgeflogen ist, bringe es auf der anderen Seite zurück.
  2. Mach dasselbe für den oberen und unteren Rand (0 und 360).

Drücke auf „Spielen“ und fliege über den rechten Rand hinaus: Das Raumschiff erscheint links wieder. Klicke dann auf „Prüfen“.

Probier es selbst

extends CharacterBody2D

const TURN_SPEED = 4.0
const THRUST = 300

func _physics_process(delta):
	rotation += Input.get_axis("move_left", "move_right") * TURN_SPEED * delta
	if Input.is_action_pressed("move_up"):
		velocity += Vector2.UP.rotated(rotation) * THRUST * delta
	$Flame.visible = Input.is_action_pressed("move_up")
	position += velocity * delta

Alle Lektionen in Projekte

Übe selbstständig: Godot-Playground