소스 검색

Corrige erreur lorsque l'on quitte le jeu

Impossible to call add_child because parent is busy.

La sortie de l'arbre n'arrive pas seulement quand la balle est detruite,
mais aussi quand le jeu se coupe ou quand le niveau est nettoye. Donc il
faut un signal dedie pour cela.
DricomDragon 11 달 전
부모
커밋
87507e1803
2개의 변경된 파일4개의 추가작업 그리고 1개의 파일을 삭제
  1. 3 0
      godot/composants/objets/balle/balle.gd
  2. 1 1
      godot/composants/objets/lanceur/lanceur.gd

+ 3 - 0
godot/composants/objets/balle/balle.gd

@@ -2,6 +2,8 @@ class_name Balle
 extends CharacterBody2D
 
 
+signal sortie_ecran
+
 const ratio_diff_angle: float = PI * 0.005 # radian / px
 const ascension_min: float = 10.0 # px / sec
 
@@ -43,4 +45,5 @@ func _auto_detruire() -> void:
 
 
 func _quand_verificateur_visibilite_detecte_sortie_ecran():
+	sortie_ecran.emit()
 	_auto_detruire()

+ 1 - 1
godot/composants/objets/lanceur/lanceur.gd

@@ -11,7 +11,7 @@ func _ready() -> void:
 func lancer_balle() -> void:
 	var nouvelle_balle: Balle = SceneBalle.instantiate()
 	add_child(nouvelle_balle)
-	nouvelle_balle.tree_exited.connect(_quand_balle_sort)
+	nouvelle_balle.sortie_ecran.connect(_quand_balle_sort)
 
 
 func _quand_balle_sort() -> void: