ServiceMenu: afegides noves opcions a "SETTINGS"

This commit is contained in:
2025-06-13 21:25:40 +02:00
parent c83d58aaa3
commit 4b8cc67b5c
2 changed files with 17 additions and 7 deletions

View File

@@ -363,17 +363,27 @@ void ServiceMenu::initializeOptions()
options_.emplace_back(lang::getText("[SERVICE_MENU] MUSIC_VOLUME"), SettingsGroup::AUDIO, OptionBehavior::ADJUST, &options.audio.music.volume, ValueType::INT, 0, 100, 5);
options_.emplace_back(lang::getText("[SERVICE_MENU] SFX_VOLUME"), SettingsGroup::AUDIO, OptionBehavior::ADJUST, &options.audio.sound.volume, ValueType::INT, 0, 100, 5);
// Game
options_.emplace_back(lang::getText("[SERVICE_MENU] AUTOFIRE"), SettingsGroup::GAME, OptionBehavior::ADJUST, &options.game.autofire, ValueType::BOOL);
// Settings
options_.emplace_back(lang::getText("[SERVICE_MENU] AUTOFIRE"), SettingsGroup::SETTINGS, OptionBehavior::ADJUST, &options.game.autofire, ValueType::BOOL);
options_.emplace_back(
lang::getText("[SERVICE_MENU] LANGUAGE"),
SettingsGroup::GAME,
SettingsGroup::SETTINGS,
OptionBehavior::ADJUST,
&options.pending_changes.new_language,
std::vector<std::string>{
lang::getText("[SERVICE_MENU] LANG_ES"),
lang::getText("[SERVICE_MENU] LANG_BA"),
lang::getText("[SERVICE_MENU] LANG_EN")});
options_.emplace_back(
lang::getText("[SERVICE_MENU] DIFFICULTY"),
SettingsGroup::SETTINGS,
OptionBehavior::ADJUST,
&options.pending_changes.new_difficulty,
std::vector<std::string>{
lang::getText("[SERVICE_MENU] EASY"),
lang::getText("[SERVICE_MENU] NORMAL"),
lang::getText("[SERVICE_MENU] HARD")});
options_.emplace_back(lang::getText("[SERVICE_MENU] ENABLE_SHUTDOWN"), SettingsGroup::SETTINGS, OptionBehavior::ADJUST, &options.game.shutdown_enabled, ValueType::BOOL);
// System
options_.emplace_back(lang::getText("[SERVICE_MENU] RESET"), SettingsGroup::SYSTEM, OptionBehavior::SELECT, nullptr, ValueType::NONE);
@@ -384,7 +394,7 @@ void ServiceMenu::initializeOptions()
// Menu principal
options_.emplace_back(lang::getText("[SERVICE_MENU] VIDEO"), SettingsGroup::MAIN, OptionBehavior::SELECT, SettingsGroup::VIDEO);
options_.emplace_back(lang::getText("[SERVICE_MENU] AUDIO"), SettingsGroup::MAIN, OptionBehavior::SELECT, SettingsGroup::AUDIO);
options_.emplace_back(lang::getText("[SERVICE_MENU] SETTINGS"), SettingsGroup::MAIN, OptionBehavior::SELECT, SettingsGroup::GAME);
options_.emplace_back(lang::getText("[SERVICE_MENU] SETTINGS"), SettingsGroup::MAIN, OptionBehavior::SELECT, SettingsGroup::SETTINGS);
options_.emplace_back(lang::getText("[SERVICE_MENU] SYSTEM"), SettingsGroup::MAIN, OptionBehavior::SELECT, SettingsGroup::SYSTEM);
// Al terminar de inicializar las opciones, recalcula los anchos de menú
@@ -432,7 +442,7 @@ void ServiceMenu::applySettings(ServiceMenu::SettingsGroup group)
case SettingsGroup::AUDIO:
Audio::get()->applySettings();
break;
case SettingsGroup::GAME:
case SettingsGroup::SETTINGS:
break;
default:
break;
@@ -486,7 +496,7 @@ ServiceMenu::GroupAlignment ServiceMenu::getGroupAlignment(SettingsGroup group)
{
case SettingsGroup::VIDEO:
case SettingsGroup::AUDIO:
case SettingsGroup::GAME:
case SettingsGroup::SETTINGS:
return GroupAlignment::LEFT;
default:
return GroupAlignment::CENTERED;

View File

@@ -59,7 +59,7 @@ private:
{
VIDEO, // Configuraciones de vídeo
AUDIO, // Opciones de audio
GAME, // Opciones de juego
SETTINGS, // Opciones de juego
SYSTEM, // Opciones del sistema
MAIN // Menú principal
};