Files
ScrapFrontier/menu/options.gd
T

48 lines
1.2 KiB
GDScript

extends Node
signal show_credits
signal show_main_menu
func _ready() -> void:
_load_current_settings()
_init_focus()
_setup_neighbors()
func _init_focus() -> void:
$%FullscreenCheckButton.grab_focus()
func _setup_neighbors() -> void:
$%CreditsButton.focus_neighbor_left = $%BackButton.get_path()
$%BackButton.focus_neighbor_right = $%CreditsButton.get_path()
func _load_current_settings() -> void:
$%FullscreenCheckButton.button_pressed = SettingsManager.fullscreen()
$%WindowFactorOptionButton.selected = SettingsManager.window_factor()
_update_window_factor_disabled()
func _update_window_factor_disabled() -> void:
$%WindowFactorOptionButton.disabled = SettingsManager.fullscreen()
func _on_fullscreen_check_button_toggled(toggled: bool) -> void:
SettingsManager.set_fullscreen(toggled)
_update_window_factor_disabled()
func _on_window_factor_option_button_item_selected(index: int) -> void:
if !SettingsManager.fullscreen():
SettingsManager.set_window_factor(index)
func _on_credits_button_pressed() -> void:
show_credits.emit()
func _on_back_button_pressed() -> void:
show_main_menu.emit()