40 lines
699 B
C++
Raw Normal View History

2022-03-21 18:39:51 +01:00
#pragma once
namespace mods
{
2023-03-08 09:38:35 +01:00
enum zone_priority
{
none,
// common
pre_gfx,
post_gfx,
post_common,
// game
pre_map,
post_map,
};
struct mod_zone
{
std::string name;
unsigned int alloc_flags;
2023-03-08 09:38:35 +01:00
zone_priority priority;
};
2022-08-22 01:42:13 +02:00
bool mod_requires_restart(const std::string& path);
void set_mod(const std::string& path);
std::optional<std::string> get_mod();
std::vector<mod_zone> get_mod_zones();
2023-02-15 18:24:35 +01:00
2023-04-07 03:24:45 +02:00
void load(const std::string& path);
void unload();
2023-02-15 18:24:35 +01:00
std::vector<std::string> get_mod_list();
std::optional<nlohmann::json> get_mod_info(const std::string& mod);
2023-04-07 03:24:45 +02:00
bool mod_exists(const std::string& folder);
2023-02-15 18:24:35 +01:00
nlohmann::json& get_current_stats();
void write_mod_stats();
2022-03-21 18:39:51 +01:00
}