Files
Decked-Out-Defense/UI/Menus/OptionsMenu/gameplay_options.gd
2026-02-10 02:51:16 +11:00

72 lines
2.8 KiB
GDScript

class_name GameplayOptionsMenu
extends VBoxContainer
@export var resolution_drop_down: OptionButton
@export var look_sens_slider: HSlider
@export var look_sens_input: SpinBox
@export var toggle_sprint_checkbox: CheckButton
@export var invert_lookY: CheckButton
@export var invert_lookX: CheckButton
@export var fixed_minimap: CheckButton
@export var tower_damage: Button
@export var self_damage: Button
@export var party_damage: Button
@export var status_damage: Button
func _ready() -> void:
#resolution_drop_down.add_item("320x240")
#resolution_drop_down.add_item("1920x1080")
#$MouseSens2/HBoxContainer/SpinBox.value = get_window().content_scale_factor
#$MouseSens2/HBoxContainer/HSlider.value = get_window().content_scale_factor
look_sens_slider.value = Data.preferences.mouse_sens
look_sens_input.value = Data.preferences.mouse_sens
toggle_sprint_checkbox.button_pressed = Data.preferences.toggle_sprint
invert_lookY.button_pressed = Data.preferences.invert_lookY
invert_lookX.button_pressed = Data.preferences.invert_lookX
fixed_minimap.button_pressed = Data.preferences.fixed_minimap
tower_damage.button_pressed = Data.preferences.display_tower_damage_indicators
self_damage.button_pressed = Data.preferences.display_self_damage_indicators
party_damage.button_pressed = Data.preferences.display_party_damage_indicators
status_damage.button_pressed = Data.preferences.display_status_effect_damage_indicators
func save() -> void:
Data.preferences.mouse_sens = look_sens_slider.value
Data.preferences.toggle_sprint = toggle_sprint_checkbox.button_pressed
Data.preferences.invert_lookY = invert_lookY.button_pressed
Data.preferences.invert_lookX = invert_lookX.button_pressed
Data.preferences.fixed_minimap = fixed_minimap.button_pressed
Data.preferences.display_tower_damage_indicators = tower_damage.button_pressed
Data.preferences.display_self_damage_indicators = self_damage.button_pressed
Data.preferences.display_party_damage_indicators = party_damage.button_pressed
Data.preferences.display_status_effect_damage_indicators = status_damage.button_pressed
func _on_mouse_sens_spin_box_value_changed(value: float) -> void:
look_sens_slider.value = value
func _on_mouse_sens_h_slider_value_changed(value: float) -> void:
look_sens_input.value = value
func _on_option_button_item_selected(index: int) -> void:
#print(index)
if index == 0:
get_tree().root.size = Vector2i(320, 240)
#DisplayServer.window_set_size(Vector2i(320, 240))
#print(get_tree().root.size)
if index == 1:
get_tree().root.size = Vector2i(1920, 1080)
#DisplayServer.window_set_size(Vector2i(1920, 1080))
#print(get_tree().root.size)
func _on_spin_box_value_changed(value: float) -> void:
get_window().content_scale_factor = value
func _on_h_slider_value_changed(value: float) -> void:
get_window().content_scale_factor = value