mirror of
https://github.com/kodzukye/omens-ascent.git
synced 2026-08-10 13:23:10 +00:00
47 lines
1.4 KiB
GDScript
47 lines
1.4 KiB
GDScript
class_name TitleScreen
|
|
extends Control
|
|
|
|
@onready var _start_game_button: Button = $Options/StartGameButton
|
|
@onready var _options_button: Button = $Options/OptionsButton
|
|
@onready var _credits_button: Button = $Options/CreditsButton
|
|
@onready var _exit_button: Button = $Options/ExitButton
|
|
@onready var _background: ColorRect = $FadeOut
|
|
|
|
func _ready() -> void:
|
|
_start_game_button.pressed.connect(_on_start_game_pressed)
|
|
_options_button.pressed.connect(_on_options_pressed)
|
|
_credits_button.pressed.connect(_on_credit_pressed)
|
|
_exit_button.pressed.connect(_on_exit_pressed)
|
|
_start_game_button.grab_focus()
|
|
|
|
func _unhandled_input(event: InputEvent) -> void:
|
|
if not event.is_action_pressed("interact"):
|
|
return
|
|
var viewport: Viewport = get_viewport()
|
|
if viewport == null:
|
|
return
|
|
var focused: Control = viewport.gui_get_focus_owner()
|
|
if focused is Button:
|
|
(focused as Button).pressed.emit()
|
|
viewport.set_input_as_handled()
|
|
|
|
func _on_start_game_pressed() -> void:
|
|
# Fade out
|
|
var tween: Tween = create_tween()
|
|
tween.tween_property(_background, "color:a", 1.0, 1.2)
|
|
await tween.finished
|
|
if OS.get_name() == "Web":
|
|
JavaScriptBridge.eval("document.querySelector('canvas').focus()")
|
|
|
|
|
|
SceneManager.change_scene("res://scenes/components/intro.tscn")
|
|
|
|
func _on_options_pressed() -> void:
|
|
print('Options Pressed')
|
|
|
|
func _on_credit_pressed() -> void:
|
|
print('Credit Pressed')
|
|
|
|
func _on_exit_pressed() -> void:
|
|
SceneManager.quit_game()
|