aboutsummaryrefslogtreecommitdiff
path: root/client/menu/menu_manager.gd
diff options
context:
space:
mode:
authortpart <tpart120@proton.me>2024-06-29 22:08:39 +0200
committertpart <tpart120@proton.me>2024-06-29 22:08:41 +0200
commit9a76089edbae93c874b24c53a9b79f1fe10ebe2f (patch)
tree76f003962c2f1c1219c88e6ab02bf7c53a389afb /client/menu/menu_manager.gd
parent424b4ef3716e74bcc54c3eefffe6ba7994d79270 (diff)
downloadhurrycurry-9a76089edbae93c874b24c53a9b79f1fe10ebe2f.tar
hurrycurry-9a76089edbae93c874b24c53a9b79f1fe10ebe2f.tar.bz2
hurrycurry-9a76089edbae93c874b24c53a9b79f1fe10ebe2f.tar.zst
Add Sound singleton; Restructure sound system; Add button sounds to ingame menu
Diffstat (limited to 'client/menu/menu_manager.gd')
-rw-r--r--client/menu/menu_manager.gd33
1 files changed, 3 insertions, 30 deletions
diff --git a/client/menu/menu_manager.gd b/client/menu/menu_manager.gd
index 58f35885..e51e47f1 100644
--- a/client/menu/menu_manager.gd
+++ b/client/menu/menu_manager.gd
@@ -8,18 +8,14 @@ class_name MenuManager
}
@onready var transition = $SceneTransition
-@onready var hover_sound = $Hover
-@onready var click_sound = $Click
-
var menu_stack = ["main"]
-
func _ready():
- get_viewport().gui_focus_changed.connect(play_hover_maybe)
+ get_viewport().gui_focus_changed.connect(Sound.play_hover_maybe)
Global.focus_first_button(menus[menu_stack.back()])
for m in menus.values():
- connect_button_sounds(m)
+ Global.connect_button_sounds(m)
if Global.fade_next:
Global.fade_next = false
@@ -27,7 +23,7 @@ func _ready():
func _input(_event):
if Input.is_action_just_pressed("ui_cancel") && menu_stack.size() > 1:
- play_click()
+ Sound.play_click()
go_back()
func goto(menu_name: String):
@@ -53,26 +49,3 @@ func show_menu(menu_name: String):
else:
menus[k].hide()
await transition.fade_in()
-
-func connect_button_sounds(node: Node):
- if node is Button:
- node.pressed.connect(play_click)
- if node is Button or node is LineEdit or node is Slider:
- node.mouse_entered.connect(play_hover)
- for c in node.get_children():
- connect_button_sounds(c)
-
-func play_click():
- click_sound.play()
-
-func play_hover():
- hover_sound.play()
-
-func play_hover_maybe(element):
- if Global.focus_auto_changed:
- Global.focus_auto_changed = false
- return
- if element is Button:
- if element.is_hovered():
- return
- play_hover()