Quebre uma caixa
Parte da seção Sensação de jogo do Journey de Godot da Coddy. Lição 15 de 23.
Quando você entra em uma caixa, ela desaparece. Faça com que ela se quebre em estilhaços. burst.tscn é um CPUParticles2D de estilhaços de madeira de disparo único que se remove quando termina.
Não adicione o efeito de estilhaços como filho da caixa. queue_free() remove um nó e todos os seus filhos, então o efeito de estilhaços desapareceria junto com a caixa. Adicione-o ao pai da caixa, na posição da caixa.
var burst = BURST.instantiate()
burst.position = position
get_parent().add_child(burst)
burst.emitting = true
queue_free()get_parent() é o nó acima da caixa na árvore: o nível. O efeito de estilhaços é irmão da caixa, então permanece quando a caixa desaparece.
Desafio
MédioFaça uma caixa explodir em pedaços.
- Em
_on_body_entered, crie uma explosão comBURST.instantiate()e coloque-a napositionda caixa. - Adicione-a a
get_parent()e definaemittingcomotrue. - Em seguida, remova a caixa.
Pressione “Jogar” e caminhe até uma caixa: os pedaços voam de onde ela estava. Depois, “Verificar”.
Experimente você mesmo
extends Area2D
const BURST = preload("res://burst.tscn")
func _ready():
body_entered.connect(_on_body_entered)
func _on_body_entered(body):
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 Sensação de jogo
Pratique por conta própria: Playground de Godot