Files
Dawn-Godot/ui/settings/SettingsMenu.gd
T
2026-06-14 10:57:36 -05:00

29 lines
1.1 KiB
GDScript

class_name SettingsMenu extends TabMenu
const TEXT_SPEED_VALUES:Array[float] = [0.2, 1.0, 2.0]
@export var checkInvertX:CheckBox
@export var checkInvertY:CheckBox
@export var sliderControllerSpeed:HSlider
@export var sliderMouseSpeed:HSlider
@export var optionTextSpeed:OptionButton
func _ready() -> void:
super._ready()
checkInvertX.button_pressed = SETTINGS.invertCameraX
checkInvertY.button_pressed = SETTINGS.invertCameraY
checkInvertX.toggled.connect(func(v:bool): SETTINGS.invertCameraX = v)
checkInvertY.toggled.connect(func(v:bool): SETTINGS.invertCameraY = v)
sliderControllerSpeed.value = SETTINGS.cameraSpeedController
sliderMouseSpeed.value = SETTINGS.cameraSpeedMouse
sliderControllerSpeed.value_changed.connect(func(v:float): SETTINGS.cameraSpeedController = v)
sliderMouseSpeed.value_changed.connect(func(v:float): SETTINGS.cameraSpeedMouse = v)
optionTextSpeed.select(_textSpeedToIndex(SETTINGS.textSpeed))
optionTextSpeed.item_selected.connect(func(idx:int): SETTINGS.textSpeed = TEXT_SPEED_VALUES[idx])
func _textSpeedToIndex(speed:float) -> int:
match speed:
0.2: return 0
2.0: return 2
_: return 1