difficulty: mogut desde options a un fitxer propi

This commit is contained in:
2025-07-23 19:52:57 +02:00
parent e21839e478
commit d33c1f5dc5
10 changed files with 319 additions and 146 deletions

39
source/difficulty.cpp Normal file
View File

@@ -0,0 +1,39 @@
#include "difficulty.h"
#include <vector> // Para vector
namespace Difficulty {
static std::vector<Info> difficulties_list;
void init() {
difficulties_list = {
{Code::EASY, "Easy"},
{Code::NORMAL, "Normal"},
{Code::HARD, "Hard"}
};
}
auto getDifficulties() -> std::vector<Info>& {
return difficulties_list;
}
auto getNameFromCode(Code code) -> std::string {
for (const auto& difficulty : difficulties_list) {
if (difficulty.code == code) {
return difficulty.name;
}
}
return !difficulties_list.empty() ? difficulties_list.front().name : "Unknown";
}
auto getCodeFromName(const std::string& name) -> Code {
for (const auto& difficulty : difficulties_list) {
if (difficulty.name == name) {
return difficulty.code;
}
}
return !difficulties_list.empty() ? difficulties_list.front().code : Code::NORMAL;
}
} // namespace Difficulty