diff options
Diffstat (limited to 'game')
| -rw-r--r-- | game/client/settings.cc | 10 | ||||
| -rw-r--r-- | game/client/settings.hh | 3 | ||||
| -rw-r--r-- | game/client/sound.cc | 7 |
3 files changed, 15 insertions, 5 deletions
diff --git a/game/client/settings.cc b/game/client/settings.cc index 65679cb..d239532 100644 --- a/game/client/settings.cc +++ b/game/client/settings.cc @@ -223,6 +223,8 @@ static std::string str_gamepad_checkbox_tooltip; static std::string str_video_gui; +static std::string str_sound_levels; + static std::vector<SettingValue *> values_all; static std::vector<SettingValue *> values[NUM_LOCATIONS]; @@ -619,6 +621,8 @@ static void on_language_set(const LanguageSetEvent &event) str_video_gui = language::resolve("settings.video.gui"); + str_sound_levels = language::resolve("settings.sound.levels"); + for(SettingValue *value : values_all) { if(value->type == setting_type::CHECKBOX) { auto checkbox = static_cast<SettingValue_CheckBox *>(value); @@ -734,8 +738,12 @@ static void layout_video(void) static void layout_sound(void) { - if(ImGui::BeginChild("###settings.sound.child")) + if(ImGui::BeginChild("###settings.sound.child")) { layout_values(settings_location::SOUND); + ImGui::SeparatorText(str_sound_levels.c_str()); + layout_values(settings_location::SOUND_LEVELS); + } + ImGui::EndChild(); } diff --git a/game/client/settings.hh b/game/client/settings.hh index 56ad16d..2b9e553 100644 --- a/game/client/settings.hh +++ b/game/client/settings.hh @@ -26,7 +26,8 @@ enum class settings_location : unsigned int { VIDEO = 0x0009U, VIDEO_GUI = 0x000AU, SOUND = 0x000BU, - COUNT = 0x000CU, + SOUND_LEVELS = 0x000CU, + COUNT = 0x000DU, }; namespace settings diff --git a/game/client/sound.cc b/game/client/sound.cc index eefc297..fc48002 100644 --- a/game/client/sound.cc +++ b/game/client/sound.cc @@ -38,9 +38,10 @@ void sound::init(void) globals::client_config.add_value("sound.volume_ui", sound::volume_ui); settings::add_slider(1, sound::volume_master, settings_location::SOUND, "sound.volume_master", false, "%.0f%%"); - settings::add_slider(2, sound::volume_effects, settings_location::SOUND, "sound.volume_effects", false, "%.0f%%"); - settings::add_slider(3, sound::volume_music, settings_location::SOUND, "sound.volume_music", false, "%.0f%%"); - settings::add_slider(4, sound::volume_ui, settings_location::SOUND, "sound.volume_ui", false, "%.0f%%"); + + settings::add_slider(0, sound::volume_effects, settings_location::SOUND_LEVELS, "sound.volume_effects", false, "%.0f%%"); + settings::add_slider(1, sound::volume_music, settings_location::SOUND_LEVELS, "sound.volume_music", false, "%.0f%%"); + settings::add_slider(2, sound::volume_ui, settings_location::SOUND_LEVELS, "sound.volume_ui", false, "%.0f%%"); alGenSources(1, &generic_source); alSourcei(generic_source, AL_SOURCE_RELATIVE, AL_TRUE); |
