ソースを参照

:beetle: Corrige fin de niveau prematuree

La balle electrique pouvait frapper plusieurs fois la meme brique :
une fois avec le champ elecrique, et une fois par contact.

La brique etait donc soustraite deux fois, ce qui causait l'apparition
de l'ecran de victoire ... alors qu'il restait encore des briques !

Le correctif consiste a limiter la brique a une mort max.
DricomDragon 8 ヶ月 前
コミット
618040159f
1 ファイル変更3 行追加1 行削除
  1. 3 1
      godot/composants/objets/brique/brique.gd

+ 3 - 1
godot/composants/objets/brique/brique.gd

@@ -17,6 +17,7 @@ const NOMBRE_DE_VIES_MAX: int = 4
 	set = set_pouvoir_type
 
 var _texture_brique: Texture2D = preload("res://composants/objets/brique/images/01.png")
+var _vivante: bool = true
 
 @onready var image: Sprite2D = $Image
 
@@ -28,7 +29,7 @@ func _ready() -> void:
 
 func frapper(nb_degats: int) -> void:
 	nombre_de_vies -= nb_degats
-	if nombre_de_vies <= 0:
+	if nombre_de_vies <= 0 and _vivante:
 		_mourir()
 
 
@@ -68,6 +69,7 @@ func _mourir() -> void:
 	queue_free()
 	_eclater()
 	_liberer_capsule()
+	_vivante = false;
 
 
 func _eclater() -> void: