Menu
CoddyTech
flag Ru iconРусскийdown icon

Сигнал другого узла

Часть раздела Сигналы и столкновения путешествия по Godot на Coddy. Урок 9 из 27.

Скрипт также может прослушивать сигнал другого узла. Получите узел с помощью $, затем подключите его сигнал:

$Switch.body_entered.connect(_on_switch_body_entered)

Это означает: когда Switch отправляет сигнал body_entered, вызовите _on_switch_body_entered. Функция находится в этом скрипте, поэтому она может использовать узлы этого скрипта, например $Light.

В играх часто используют такую схему. Один главный скрипт подключает переключатель, свет и дверь, а каждый из них остается простым. Godot называет такие функции так: _on_, затем имя узла, затем имя сигнала.

challenge icon

Задание

Легко

В Main есть функция, которая включает свет, но её никто не вызывает. В _ready() узла Main подключи body_entered узла Switch к _on_switch_body_entered. Затем наступи на зелёный переключатель.

Попробуйте сами

extends Node2D

func _ready():
	pass

func _on_switch_body_entered(body):
	$Light.visible = true
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Сигналы и столкновения

Потренируйтесь самостоятельно: Песочница Godot