41 lines
1017 B
GDScript3
41 lines
1017 B
GDScript3
|
extends Control
|
||
|
|
||
|
var is_paused = false setget set_is_paused
|
||
|
|
||
|
func _ready():
|
||
|
visible = false
|
||
|
|
||
|
func _unhandled_input(event):
|
||
|
if event.is_action_pressed("pause"):
|
||
|
self.is_paused = !is_paused
|
||
|
|
||
|
func set_is_paused(value):
|
||
|
if Input.get_mouse_mode() == Input.MOUSE_MODE_CAPTURED:
|
||
|
Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE)
|
||
|
is_paused = value
|
||
|
get_tree().paused = is_paused
|
||
|
visible = is_paused
|
||
|
if is_paused:
|
||
|
$CenterContainer/VBoxContainer/ResumeButton.grab_focus()
|
||
|
|
||
|
func _on_QuitButton_pressed():
|
||
|
get_tree().quit()
|
||
|
|
||
|
func _on_ResumeButton_pressed():
|
||
|
get_tree().paused = false
|
||
|
visible = false
|
||
|
Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED)
|
||
|
|
||
|
func _on_MainMenuButton_pressed():
|
||
|
get_tree().paused = false
|
||
|
var _a = get_tree().change_scene("res://Screens/TitleScreen.tscn")
|
||
|
|
||
|
|
||
|
func _on_ControlsButton_pressed():
|
||
|
var dialog = Dialogic.start("controls")
|
||
|
add_child(dialog)
|
||
|
dialog.connect("tree_exiting", self, "controls_done")
|
||
|
|
||
|
func controls_done():
|
||
|
$CenterContainer/VBoxContainer/ControlsButton.grab_focus()
|