Liberar o caminho
Parte da seção Sinais e colisões do Journey de Godot da Coddy. Lição 18 de 27.
Para remover todos os nós de um tipo, percorra o grupo e libere cada nó:
for crate in get_tree().get_nodes_in_group("crates"):
crate.queue_free()Você não pode liberar a própria lista. get_nodes_in_group("crates").queue_free() interrompe o jogo com um erro, porque uma lista não é um nó.
Três caixas bloqueiam o caminho à direita. Todas estão no grupo crates.
Desafio
MédioFaça com que o interruptor remova todas as caixas.
- Em
_on_switch_body_entered, substitua a linhaCrate1por um loopforque percorra o grupocrates. - Libere cada caixa dentro do loop.
Pressione “Jogar” e pise no interruptor: todas as caixas desaparecem e você consegue atravessá-lo. Depois, clique em “Verificar”.
Experimente você mesmo
extends Node2D
func _ready():
$Switch.body_entered.connect(_on_switch_body_entered)
func _on_switch_body_entered(body):
$Crate1.queue_free()
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Sinais e colisões
Pratique por conta própria: Playground de Godot