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