extends PanelContainer var totalVolSlider:HSlider var musicVolSlider:HSlider var sfxVolSlider:HSlider var limeOption:CheckBox var messageOption:CheckBox func _ready(): totalVolSlider = %TotalVolSlider musicVolSlider = %MusicVolSlider sfxVolSlider = %SFXVolSlider limeOption = %limeCheck messageOption = %messageCheck initialize_volume_bars() update_volumes(0) totalVolSlider.value_changed.connect(update_volumes) musicVolSlider.value_changed.connect(update_volumes) sfxVolSlider.value_changed.connect(update_volumes) limeOption.pressed.connect(limeToggled) func initialize_volume_bars(): var savedTotalVol = SaveManager.get_global_value("totalVol", 100) totalVolSlider.value = savedTotalVol var savedMusicVol = SaveManager.get_global_value("musicVol", 100) musicVolSlider.value = savedMusicVol var savedSFXVol = SaveManager.get_global_value("sfxVol", 100) sfxVolSlider.value = savedSFXVol var savedlimeOption = SaveManager.get_save_value("LimeEnabled", true) limeOption.button_pressed = savedlimeOption func update_volumes(_newVolume): save_volumes() AudioServer.set_bus_volume_db(0, linear_to_db(totalVolSlider.value)) AudioServer.set_bus_volume_db(1, linear_to_db(musicVolSlider.value)) AudioServer.set_bus_volume_db(2, linear_to_db(sfxVolSlider.value)) func save_volumes(): SaveManager.set_global_value("totalVol", totalVolSlider.value) SaveManager.set_global_value("musicVol", musicVolSlider.value) SaveManager.set_global_value("sfxVol", sfxVolSlider.value) func limeToggled(): SaveManager.set_save_value("LimeEnabled", limeOption.button_pressed) if !limeOption.button_pressed and SaveManager.get_save_value("BeeslyLimeMode", false): get_tree().call_group("Beesly", "LimeOff") func _on_message_check_pressed(): SaveManager.set_save_value("ShowMessageOpt",messageOption.button_pressed)