Есть ли это в группе?
Часть раздела Сигналы и столкновения путешествия по Godot на Coddy. Урок 12 из 27.
Проверка body.name работает для одного узла. Для набора узлов проверьте группу:
if body.is_in_group("racers"):
print(body.name, " finished!")is_in_group() отвечает «да» или «нет». Используйте её даже для одного узла. Имя меняется, когда вы переименовываете узел или копируете его. Группа указывает, чем является узел.
Три робота бегут к финишной линии. Red и Blue входят в группу racers, заданную в сцене. Bot убирает трассу и не входит ни в одну группу.
Задание
ЛегкоФинишная линия выводит строку для каждого робота, который пересекает её. Сделай так, чтобы она выводила строку только для гонщиков. В консоли должны отображаться Red finished! и Blue finished!, а для Bot ничего.
Попробуйте сами
extends Area2D
func _ready():
body_entered.connect(_on_body_entered)
func _on_body_entered(body):
print(body.name, " finished!")
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Сигналы и столкновения
Потренируйтесь самостоятельно: Песочница Godot