Rompi una cassa
Fa parte della sezione Sensazioni di gioco del percorso Godot di Coddy. Lezione 15 di 23.
Quando cammini contro una cassa, scompare. Fai in modo che si rompa in schegge. burst.tscn è un CPUParticles2D a emissione singola di schegge di legno che si rimuove al termine.
Non aggiungere l’effetto di rottura come figlio della cassa. queue_free() rimuove un nodo insieme a tutti i suoi figli, quindi l’effetto di rottura sparirebbe insieme alla cassa. Aggiungilo al genitore della cassa, nella posizione della cassa.
var burst = BURST.instantiate()
burst.position = position
get_parent().add_child(burst)
burst.emitting = true
queue_free()get_parent() è il nodo sopra la cassa nell’albero, il livello. L’effetto di rottura è un nodo fratello della cassa, quindi rimane quando la cassa scompare.
Sfida
MedioFai esplodere una cassa in schegge.
- In
_on_body_entered, crea un'esplosione conBURST.instantiate()e posizionala allapositiondella cassa. - Aggiungila a
get_parent()e imposta il suoemittingsutrue. - Poi rimuovi la cassa.
Premi «Gioca» e cammina contro una cassa: le schegge volano nel punto in cui si trovava. Poi premi «Verifica».
Provalo tu
extends Area2D
const BURST = preload("res://burst.tscn")
func _ready():
body_entered.connect(_on_body_entered)
func _on_body_entered(body):
queue_free()
Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Sensazioni di gioco
Esercitati da solo: Playground Godot