afegida persistencia i fuck yamal

This commit is contained in:
2026-04-04 13:00:02 +02:00
parent 08ba88ec05
commit 6a09d7219d
9 changed files with 15021 additions and 98 deletions

View File

@@ -139,7 +139,8 @@ char *file_getfilebuffer(const char *resourcename, int& filesize, const bool zer
return buffer;
}
// Crea la carpeta del sistema donde guardar datos
// Crea la carpeta del sistema donde guardar datos.
// Acepta rutas con subdirectorios (ej: "jailgames/aee") y crea toda la jerarquía.
void file_setconfigfolder(const char *foldername)
{
#ifdef _WIN32
@@ -151,28 +152,15 @@ void file_setconfigfolder(const char *foldername)
#elif __linux__
struct passwd *pw = getpwuid(getuid());
const char *homedir = pw->pw_dir;
config_folder = std::string(homedir) + "/." + foldername;
config_folder = std::string(homedir) + "/.config/" + foldername;
#endif
struct stat st = {0};
if (stat(config_folder.c_str(), &st) == -1)
{
#ifdef _WIN32
int ret = mkdir(config_folder.c_str());
#else
int ret = mkdir(config_folder.c_str(), S_IRWXU);
#endif
if (ret == -1)
{
printf("ERROR CREATING CONFIG FOLDER.");
exit(EXIT_FAILURE);
}
}
std::filesystem::create_directories(config_folder);
}
const char *file_getconfigfolder() {
std::string folder = config_folder + "/";
static std::string folder;
folder = config_folder + "/";
return folder.c_str();
}