ServiceMenu: treballant en el menu de audio: no aplica els canvis
This commit is contained in:
@@ -115,3 +115,11 @@ void Audio::setMusicVolume(int volume)
|
||||
JA_SetMusicVolume(COVERTED_VOLUME);
|
||||
}
|
||||
}
|
||||
|
||||
// Aplica la configuración
|
||||
void Audio::applySettings()
|
||||
{
|
||||
setSoundVolume(options.audio.sound.volume);
|
||||
setMusicVolume(options.audio.music.volume);
|
||||
enable(options.audio.enabled);
|
||||
}
|
||||
@@ -26,6 +26,7 @@ public:
|
||||
void disable() { enabled_ = false; } // Deshabilitar audio
|
||||
void enable(bool value) { enabled_ = value; } // Establecer estado general
|
||||
void toggleEnabled() { enabled_ = !enabled_; } // Alternar estado general
|
||||
void applySettings(); // Aplica la configuración
|
||||
|
||||
// --- Configuración de Sonidos ---
|
||||
void enableSound() { sound_enabled_ = true; } // Habilitar sonidos
|
||||
|
||||
@@ -214,7 +214,7 @@ bool setOptions(const std::string &var, const std::string &value)
|
||||
}
|
||||
else if (var == "audio.volume")
|
||||
{
|
||||
options.audio.volume = std::stoi(value);
|
||||
options.audio.volume = std::clamp(std::stoi(value), 0, 100);
|
||||
}
|
||||
else if (var == "audio.music.enabled")
|
||||
{
|
||||
@@ -222,7 +222,7 @@ bool setOptions(const std::string &var, const std::string &value)
|
||||
}
|
||||
else if (var == "audio.music.volume")
|
||||
{
|
||||
options.audio.music.volume = std::stoi(value);
|
||||
options.audio.music.volume = std::clamp(std::stoi(value), 0, 100);
|
||||
}
|
||||
else if (var == "audio.sound.enabled")
|
||||
{
|
||||
@@ -230,7 +230,7 @@ bool setOptions(const std::string &var, const std::string &value)
|
||||
}
|
||||
else if (var == "audio.sound.volume")
|
||||
{
|
||||
options.audio.sound.volume = std::stoi(value);
|
||||
options.audio.sound.volume = std::clamp(std::stoi(value), 0, 100);
|
||||
}
|
||||
|
||||
// Opciones de juego
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
#include "resource.h"
|
||||
#include "options.h"
|
||||
#include "section.h" // Para Name, name, Options, options, AttractMode
|
||||
#include "audio.h"
|
||||
|
||||
// Singleton
|
||||
ServiceMenu *ServiceMenu::instance_ = nullptr;
|
||||
@@ -163,15 +164,18 @@ void ServiceMenu::setSelectorLeft()
|
||||
|
||||
void ServiceMenu::acceptSelection()
|
||||
{
|
||||
// Carpeta
|
||||
if (display_options_.at(selected_).type == ValueType::FOLDER)
|
||||
{
|
||||
previous_settings_group_ = current_settings_group_;
|
||||
current_settings_group_ = display_options_.at(selected_).target_group;
|
||||
updateMenu(current_settings_group_);
|
||||
selected_ = 0;
|
||||
return;
|
||||
}
|
||||
|
||||
else if (display_options_.at(selected_).behavior == OptionBehavior::SELECT)
|
||||
// Opción
|
||||
if (display_options_.at(selected_).behavior == OptionBehavior::SELECT)
|
||||
{
|
||||
if (display_options_.at(selected_).caption == "RESET")
|
||||
{
|
||||
@@ -191,6 +195,7 @@ void ServiceMenu::acceptSelection()
|
||||
section::options = section::Options::QUIT_WITH_CONTROLLER;
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -278,6 +283,10 @@ void ServiceMenu::applySettings(ServiceMenu::SettingsGroup group)
|
||||
Screen::get()->applySettings();
|
||||
break;
|
||||
|
||||
case SettingsGroup::AUDIO:
|
||||
Audio::get()->applySettings();
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user