29 lines
1.1 KiB
GDScript
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
|