@tool class_name Brique extends StaticBody2D const EclatementScene: PackedScene = preload("res://effets/eclatement_brique/eclatement_effet.tscn") const nombre_de_vies_max: int = 4 ## Le nombre de coups necessaires pour detruire la brique. @export_range(1, nombre_de_vies_max) var nombre_de_vies: int = 1: set = set_nombre_de_vies func _ready() -> void: _montrer_nombre_vies() func frapper(nb_degats: int) -> void: nombre_de_vies -= nb_degats if nombre_de_vies <= 0: _mourir() func _montrer_nombre_vies() -> void: var nouvelle_couleur: Color = Color.WHITE * (nombre_de_vies_max - nombre_de_vies) / (nombre_de_vies_max - 1) nouvelle_couleur.a = 1.0 # rendre opaque set_modulate(nouvelle_couleur) func _mourir() -> void: queue_free() var effet_eclatement: Node2D = EclatementScene.instantiate() effet_eclatement.position = self.position add_sibling(effet_eclatement) func set_nombre_de_vies(nb: int) -> void: nombre_de_vies = nb _montrer_nombre_vies()