Files
Embodiment/GUI/Pause Screen.gd

62 lines
1.3 KiB
GDScript

extends CanvasLayer
export var hub_world_path: String = 'res://Levels/Hub World.tscn'
export var disable_back_to_hub: bool = false
func _ready() -> void:
if disable_back_to_hub:
$'Menu/Menu Options/Back To Hub'.visible = false
return
func _on_resume_button_pressed() -> void:
resume()
return
func _on_back_to_hub_button_pressed():
if get_tree().change_scene(hub_world_path) != OK:
print('ERROR: Pause Screen failed to change scene to Hub World.')
resume()
queue_free()
return
func _on_quit_button_pressed() -> void:
get_tree().quit()
return
func _on_resume_button_mouse_entered() -> void:
$'Menu Button Hover'.play(0.0)
return
func _on_back_to_hub_button_mouse_entered() -> void:
$'Menu Button Hover'.play(0.0)
return
func _on_quit_button_mouse_entered() -> void:
$'Menu Button Hover'.play(0.0)
return
func _input(event: InputEvent) -> void:
if event.is_action_pressed('ui_cancel'):
if get_tree().paused:
resume()
else:
get_tree().paused = true
$Background.visible = true
$Menu.visible = true
return
func resume() -> void:
$Background.visible = false
$Menu.visible = false
get_tree().paused = false
return