Menu
CoddyTech

Münzsammler: Gehen

Teil des Abschnitts Signale und Kollisionen der Godot-Journey von Coddy. Lektion 23 von 27.

In den nächsten fünf Lektionen entwickelst du Coin Collector. Du gehst in einem Raum herum, sammelst jede Münze ein und gewinnst, wenn die letzte verschwunden ist.

Das Spiel hat drei Skripte:

  • player.gd: der Roboter, den du bewegst.
  • coin.gd: dieses Skript wird von jeder Münze verwendet.
  • main.gd: auf Main befinden sich die Spielregeln.

Zuerst das Gehen. Der Spieler ist ein CharacterBody2D. Die Wände und die beiden grauen Blöcke sind StaticBody2D. Diesen Bewegungsablauf hast du im letzten Abschnitt geschrieben:

func _physics_process(delta):
	velocity = Input.get_vector("move_left", "move_right", "move_up", "move_down") * SPEED
	move_and_slide()

move_and_slide() bewegt den Körper anhand seiner velocity und hält ihn an Wänden an. Wenn du position selbst änderst, würdest du durch sie hindurchgehen.

challenge icon

Aufgabe

Einfach

Starte Coin Collector: Lass die Spielfigur laufen.

  1. Setze in player.gd velocity auf Input.get_vector("move_left", "move_right", "move_up", "move_down") multipliziert mit SPEED.
  2. Rufe dann move_and_slide() auf. Lass coin.gd und main.gd unverändert.

Drücke „Spielen“: Mit den Pfeiltasten oder WASD läuft die Spielfigur, und die Wände halten sie auf. Drücke dann „Prüfen“.

Probier es selbst

extends CharacterBody2D

const SPEED = 200.0

func _physics_process(delta):
	pass

Alle Lektionen in Signale und Kollisionen

Übe selbstständig: Godot-Playground