super_space_game/scripts/title.gd
2025-12-05 22:34:56 -05:00

196 lines
3.3 KiB
GDScript

extends Node2D
var transitioning = false
func _ready() -> void:
$UI/Control/Title.visible = false
$UI/Control/ControllerInfo.visible = true
$UI/Control/ControllerInfo/Box/Flow/Continue.grab_focus()
func _on_continue_pressed() -> void:
if transitioning: return
transitioning = true
$UI/Control/ControllerInfo/Box/Flow/Continue.release_focus()
var i = 0
while i < 6:
$UI/Control/ControllerInfo.modulate.a -= 0.2
await get_tree().create_timer(0.2).timeout
i += 1
$UI/Control/Title.visible = true
$UI/Control/ControllerInfo.visible = false
$UI/Control/Title.modulate.a = 0
i = 0
while i < 6:
$UI/Control/Title.modulate.a += 0.2
await get_tree().create_timer(0.2).timeout
i += 1
$UI/Control/Title/Buttons/NewGame.grab_focus()
transitioning = false
func _on_quit_pressed() -> void:
if transitioning: return
transitioning = true
get_viewport().gui_release_focus()
var i = 0
while i < 6:
$UI/FadeToBlack.modulate.a += 0.2
await get_tree().create_timer(0.2).timeout
i += 1
get_tree().quit()
func _on_credits_pressed() -> void:
if transitioning: return
transitioning = true
get_viewport().gui_release_focus()
var i = 0
while i < 6:
$UI/Control/Title.modulate.a -= 0.2
await get_tree().create_timer(0.2).timeout
i += 1
$UI/Control/Title.visible = false
$UI/Control/Credits.visible = true
$UI/Control/Credits.modulate.a = 0
i = 0
while i < 6:
$UI/Control/Credits.modulate.a += 0.2
await get_tree().create_timer(0.2).timeout
i += 1
$UI/Control/Credits/Buttons/ExitCredits.grab_focus()
transitioning = false
func _on_exit_credits_pressed() -> void:
if transitioning: return
transitioning = true
get_viewport().gui_release_focus()
var i = 0
while i < 6:
$UI/Control/Credits.modulate.a -= 0.2
await get_tree().create_timer(0.2).timeout
i += 1
$UI/Control/Credits.visible = false
$UI/Control/Title.visible = true
$UI/Control/Title.modulate.a = 0
i = 0
while i < 6:
$UI/Control/Title.modulate.a += 0.2
await get_tree().create_timer(0.2).timeout
i += 1
$UI/Control/Title/Buttons/NewGame.grab_focus()
transitioning = false
func _on_settings_pressed() -> void:
if transitioning: return
transitioning = true
get_viewport().gui_release_focus()
var i = 0
while i < 6:
$UI/Control/Title.modulate.a -= 0.2
await get_tree().create_timer(0.2).timeout
i += 1
$UI/Control/Title.visible = false
$UI/Control/Settings.visible = true
$UI/Control/Settings.modulate.a = 0
i = 0
while i < 6:
$UI/Control/Settings.modulate.a += 0.2
await get_tree().create_timer(0.2).timeout
i += 1
$UI/Control/Settings/Scroll/Flow/Back.grab_focus()
transitioning = false
func _on_settings_back_pressed() -> void:
if transitioning: return
transitioning = true
get_viewport().gui_release_focus()
var i = 0
while i < 6:
$UI/Control/Settings.modulate.a -= 0.2
await get_tree().create_timer(0.2).timeout
i += 1
$UI/Control/Settings.visible = false
$UI/Control/Title.visible = true
$UI/Control/Title.modulate.a = 0
i = 0
while i < 6:
$UI/Control/Title.modulate.a += 0.2
await get_tree().create_timer(0.2).timeout
i += 1
$UI/Control/Title/Buttons/NewGame.grab_focus()
transitioning = false