Casser une caisse
Fait partie de la section Sensations de jeu du Journey Godot de Coddy. Leçon 15 sur 23.
Lorsque tu fonces dans une caisse, elle disparaît. Fais plutôt en sorte qu’elle se brise en éclats. burst.tscn est un CPUParticles2D à émission unique qui produit des éclats de bois et se supprime une fois terminé.
N’ajoute pas l’effet d’éclatement comme enfant de la caisse. queue_free() supprime un nœud ainsi que tous ses enfants : l’effet d’éclatement disparaîtrait donc avec la caisse. Ajoute-le au parent de la caisse, à la position de celle-ci.
var burst = BURST.instantiate()
burst.position = position
get_parent().add_child(burst)
burst.emitting = true
queue_free()get_parent() correspond au nœud situé au-dessus de la caisse dans l’arborescence : le niveau. L’effet d’éclatement est un nœud frère de la caisse, il reste donc lorsque celle-ci disparaît.
Défi
MoyenQuand le joueur touche une caisse :
- créez une explosion avec
BURST.instantiate(), - placez-la à la
positionde la caisse, - ajoutez-la à
get_parent()et définissez sonemittingsurtrue, - puis supprimez la caisse.
Essayez vous-même
extends Area2D
const BURST = preload("res://burst.tscn")
func _ready():
body_entered.connect(_on_body_entered)
func _on_body_entered(body):
queue_free()
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Sensations de jeu
Entraînez-vous par vous-même : Playground Godot