diff options
Diffstat (limited to 'client/menu')
-rw-r--r-- | client/menu/menu_manager.gd | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/client/menu/menu_manager.gd b/client/menu/menu_manager.gd index c15f181f..58f35885 100644 --- a/client/menu/menu_manager.gd +++ b/client/menu/menu_manager.gd @@ -15,6 +15,7 @@ var menu_stack = ["main"] func _ready(): + get_viewport().gui_focus_changed.connect(play_hover_maybe) Global.focus_first_button(menus[menu_stack.back()]) for m in menus.values(): @@ -56,8 +57,22 @@ func show_menu(menu_name: String): 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() |