Menu
CoddyTech

Das Signal eines anderen Nodes

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

Ein Skript kann auch auf das Signal eines anderen Knotens hören. Hole den Knoten mit $ und verbinde dann sein Signal:

$Switch.body_entered.connect(_on_switch_body_entered)

Das bedeutet: Wenn Switch body_entered sendet, wird _on_switch_body_entered aufgerufen. Die Funktion befindet sich in diesem Skript, daher kann sie die Knoten dieses Skripts verwenden, etwa $Light.

Spiele sind oft auf diese Weise verdrahtet. Ein Hauptskript verbindet den Schalter, das Licht und die Tür, und jeder dieser Knoten bleibt einfach. Godot benennt solche Funktionen mit _on_, gefolgt vom Knoten und dann vom Signal.

challenge icon

Aufgabe

Einfach

Sorge dafür, dass der Schalter das Licht einschaltet.

  1. Beginne in Main's _ready() eine Zeile mit $Switch.body_entered.
  2. Verbinde es mit _on_switch_body_entered.

Drücke „Spielen“ und tritt auf den grünen Schalter: Das Licht geht an. Drücke dann „Prüfen“.

Probier es selbst

extends Node2D

func _ready():
	pass

func _on_switch_body_entered(body):
	$Light.visible = true

Alle Lektionen in Signale und Kollisionen

Übe selbstständig: Godot-Playground