Каждый узел в группе
Часть раздела Сигналы и столкновения путешествия по Godot на Coddy. Урок 13 из 27.
get_tree().get_nodes_in_group("lamps") возвращает все узлы группы в виде списка. Пройдите по списку с помощью for:
for lamp in get_tree().get_nodes_in_group("lamps"):
lamp.visible = trueСтроки под for выполняются один раз для каждого узла. Каждый раз lamp — это следующий узел. Пять ламп означают пять повторений.
get_tree() — это дерево всей игры, поэтому эта команда находит лампы в любом месте сцены. Добавьте в группу шестую лампу, и этот код тоже её зажжёт.
Задание
СреднеСделай так, чтобы клавиша E включала все лампы.
- Замени
$Lamp1.visible = trueцикломforпоget_tree().get_nodes_in_group("lamps"). - Внутри цикла покажи каждую лампу.
Нажми «Играть» и нажми E: все пять ламп включатся. Затем нажми «Проверить».
Попробуйте сами
extends Node2D
func _process(delta):
if Input.is_action_just_pressed("action"):
$Lamp1.visible = true
Все уроки раздела Сигналы и столкновения
Потренируйтесь самостоятельно: Песочница Godot