ServiceMenu: ja es pot canviar la dificultat

This commit is contained in:
2025-06-14 19:00:26 +02:00
parent 01017cd0fe
commit a100228e0a
5 changed files with 61 additions and 12 deletions

View File

@@ -26,7 +26,7 @@ namespace Options
{DifficultyCode::HARD, "Hard"}};
// Declaraciones
bool setOptions(const std::string &var, const std::string &value);
bool set(const std::string &var, const std::string &value);
// Inicializa las opciones del programa
void init()
@@ -97,7 +97,7 @@ namespace Options
// Encuentra la posición del carácter '='
int pos = line.find("=");
// Procesa las dos subcadenas
if (!setOptions(line.substr(0, pos), line.substr(pos + 1, line.length())))
if (!set(line.substr(0, pos), line.substr(pos + 1, line.length())))
{
SDL_LogWarn(SDL_LOG_CATEGORY_APPLICATION, "Unknown parameter: %s", line.substr(0, pos).c_str());
success = false;
@@ -200,7 +200,7 @@ namespace Options
}
// Asigna variables a partir de dos cadenas
bool setOptions(const std::string &var, const std::string &value)
bool set(const std::string &var, const std::string &value)
{
// Indicador de éxito en la asignación
auto success = true;
@@ -420,4 +420,15 @@ namespace Options
pending_changes.has_pending_changes = false;
}
}
DifficultyCode getDifficultyCodeFromName(const std::string &name)
{
for (const auto &difficulty : difficulties)
{
if (difficulty.name == name)
return difficulty.code;
}
// Si no se encuentra, devuelve el primero por defecto
return difficulties[0].code;
}
} // namespace Options