Files
ScrapFrontier/menu/options.gd
T

48 lines
1.1 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.fullscreen = toggled
_update_window_factor_disabled()
func _on_window_factor_option_button_item_selected(index: int) -> void:
if not SettingsManager.fullscreen:
SettingsManager.window_factor = index
func _on_credits_button_pressed() -> void:
show_credits.emit()
func _on_back_button_pressed() -> void:
show_main_menu.emit()