Menu
CoddyTech

Каждый узел в группе

Часть раздела Сигналы и столкновения путешествия по 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() — это дерево всей игры, поэтому эта команда находит лампы в любом месте сцены. Добавьте в группу шестую лампу, и этот код тоже её зажжёт.

challenge icon

Задание

Средне

Сделай так, чтобы клавиша E включала все лампы.

  1. Замени $Lamp1.visible = true циклом for по get_tree().get_nodes_in_group("lamps").
  2. Внутри цикла покажи каждую лампу.

Нажми «Играть» и нажми E: все пять ламп включатся. Затем нажми «Проверить».

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

extends Node2D

func _process(delta):
	if Input.is_action_just_pressed("action"):
		$Lamp1.visible = true

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

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