瀏覽代碼

:wrench: Simplifie la gestion de la pause

- Enleve un signal
- Regroupe l'activation de pause dans une fonction
- Nomme la fonction pour comprendre l'effet sur la musique
DricomDragon 8 月之前
父節點
當前提交
b5756e6f6c
共有 2 個文件被更改,包括 15 次插入14 次删除
  1. 15 13
      godot/composants/interface/pause/pause_menu.gd
  2. 0 1
      godot/composants/interface/pause/pause_menu.tscn

+ 15 - 13
godot/composants/interface/pause/pause_menu.gd

@@ -8,21 +8,32 @@ func _ready() -> void:
 	Input.set_custom_mouse_cursor(curseur_main, Input.CURSOR_POINTING_HAND)
 
 
+func activer_pause() -> void:
+	get_tree().set_pause(true)
+	musique_en_retrait(true)
+	show()
+	%Reprendre.grab_focus()
+
+
+## Desactiver pause
 func reprendre() -> void:
 	hide()
-	AudioServer.set_bus_effect_enabled(2,  1,false)
+	musique_en_retrait(false)
 	get_tree().set_pause(false)
 	Input.set_custom_mouse_cursor(null, Input.CURSOR_ARROW)
 
 
+## Active ou desactive l'effet pour rendre la musique moins presente
+func musique_en_retrait(effet_actif: bool) -> void:
+	AudioServer.set_bus_effect_enabled(2, 1, effet_actif)
+
+
 func _unhandled_input(event: InputEvent) -> void:
 	if event.is_action_released("ui_pause"):
 		if get_tree().is_paused():
 			reprendre()
 		else:
-			AudioServer.set_bus_effect_enabled(2, 1, true)
-			get_tree().set_pause(true)
-			show()
+			activer_pause()
 
 
 func _quand_bouton_reprendre_est_presse():
@@ -37,12 +48,3 @@ func _quand_bouton_retour_titre_est_presse():
 func _quand_bouton_quitter_est_presse():
 	get_tree().quit()
 
-
-func _on_visibility_changed():
-	if visible:
-		_activer_pause()
-
-
-func _activer_pause() -> void:
-	%Reprendre.grab_focus()
-

+ 0 - 1
godot/composants/interface/pause/pause_menu.tscn

@@ -94,7 +94,6 @@ max_value = 0.0
 script = ExtResource("4_ygvs3")
 nom_bus = "Bruits"
 
-[connection signal="visibility_changed" from="." to="." method="_on_visibility_changed"]
 [connection signal="pressed" from="Controles/Boutons/Reprendre" to="." method="_quand_bouton_reprendre_est_presse"]
 [connection signal="pressed" from="Controles/Boutons/RetourEcranTitre" to="." method="_quand_bouton_retour_titre_est_presse"]
 [connection signal="pressed" from="Controles/Boutons/QuitterLeJeu" to="." method="_quand_bouton_quitter_est_presse"]