Le signal d’un autre nœud
Fait partie de la section Signaux et collisions du Journey Godot de Coddy. Leçon 9 sur 27.
Un script peut aussi écouter le signal d’un autre nœud. Récupère le nœud avec $, puis connecte son signal :
$Switch.body_entered.connect(_on_switch_body_entered)Cela signifie : lorsque Switch émet body_entered, appelle _on_switch_body_entered. La fonction se trouve dans ce script, elle peut donc utiliser les nœuds de ce script, comme $Light.
Les jeux sont souvent organisés ainsi. Un script principal connecte l’interrupteur, la lumière et la porte, et chacun de ces éléments reste simple. Godot nomme ces fonctions avec _on_, puis le nom du nœud, puis celui du signal.
Défi
FacileFais en sorte que l’interrupteur allume la lumière.
- Dans
_ready()de Main, commence une ligne par$Switch.body_entered. - Connecte-le à
_on_switch_body_entered.
Appuie sur « Jouer » et marche sur l’interrupteur vert : la lumière s’allume. Puis clique sur « Vérifier ».
Essayez vous-même
extends Node2D
func _ready():
pass
func _on_switch_body_entered(body):
$Light.visible = true
Toutes les leçons de Signaux et collisions
Entraînez-vous par vous-même : Playground Godot