Cada nó em um grupo
Parte da seção Sinais e colisões do Journey de Godot da Coddy. Lição 13 de 27.
get_tree().get_nodes_in_group("lamps") fornece todos os nós do grupo em uma lista. Percorra a lista com for:
for lamp in get_tree().get_nodes_in_group("lamps"):
lamp.visible = trueAs linhas abaixo de for são executadas uma vez para cada nó. A cada vez, lamp é o próximo nó. Cinco lâmpadas significam cinco iterações.
get_tree() é a árvore inteira do jogo, então isso encontra as lâmpadas em qualquer lugar da cena. Adicione uma sexta lâmpada ao grupo e este código também a acenderá.
Desafio
MédioFaça com que a tecla E acenda todas as lâmpadas.
- Substitua
$Lamp1.visible = truepor um loopforsobreget_tree().get_nodes_in_group("lamps"). - Dentro do loop, mostre cada lâmpada.
Pressione “Jogar” e pressione E: as cinco lâmpadas acendem. Depois, “Verificar”.
Experimente você mesmo
extends Node2D
func _process(delta):
if Input.is_action_just_pressed("action"):
$Lamp1.visible = true
Todas as lições de Sinais e colisões
Pratique por conta própria: Playground de Godot