Diffstat (limited to 'ui/scripts/pausemenu.gd')
-rw-r--r--ui/scripts/pausemenu.gd43
1 files changed, 43 insertions, 0 deletions
diff --git a/ui/scripts/pausemenu.gd b/ui/scripts/pausemenu.gd
new file mode 100644
index 0000000..ea08083
--- /dev/null
+++ b/ui/scripts/pausemenu.gd
@@ -0,0 +1,43 @@
+extends Control
+
+var setting = false
+export var trigger = "pause"
+
+onready var main_menu_button = $"%MainMenuButton"
+onready var settings = $"%settings"
+
+
+func _input(event):
+ if event.is_action_pressed(trigger):
+ var tree = get_tree()
+ tree.paused = not tree.paused
+ visible = tree.paused
+ if tree.paused:
+ main_menu_button.grab_focus()
+ else:
+ settings.hide()
+
+
+func _exit_tree():
+ get_tree().paused = false
+
+
+func _on_settings_back():
+ settings.visible = false
+ setting = false
+ yield(get_tree(), "idle_frame")
+ main_menu_button.grab_focus()
+
+
+func _on_options_pressed():
+ if setting != true:
+ setting = true
+ settings.called()
+
+
+func _on_exit_pressed():
+ Game.exit()
+
+
+func _on_MainMenuButton_pressed():
+ Game.transition("res://ui/scenes/StartMenu.tscn")