#define MODS_HEADER
#include "irrlichttypes.h"
-#include <irrList.h>
#include <list>
#include <set>
#include <vector>
#include <string>
#include <map>
#include <exception>
-#include <list>
#include "json/json.h"
#include "config.h"
-#if USE_CURL
-#include <curl/curl.h>
-#endif
-
#define MODNAME_ALLOWED_CHARS "abcdefghijklmnopqrstuvwxyz0123456789_"
class ModError : public std::exception
bool is_modpack;
// if modpack:
std::map<std::string,ModSpec> modpack_content;
- ModSpec(const std::string name_="", const std::string path_=""):
+ ModSpec(const std::string &name_="", const std::string &path_=""):
name(name_),
path(path_),
depends(),
m_name_conflicts()
{}
-
+
ModConfiguration(std::string worldpath);
// checks if all dependencies are fullfilled.
// exists. A name conflict happens when two or more mods
// at the same level have the same name but different paths.
// Levels (mods in higher levels override mods in lower levels):
- // 1. common mod in modpack; 2. common mod;
- // 3. game mod in modpack; 4. game mod;
- // 5. world mod in modpack; 6. world mod;
- // 7. addon mod in modpack; 8. addon mod.
+ // 1. game mod in modpack; 2. game mod;
+ // 3. world mod in modpack; 4. world mod;
+ // 5. addon mod in modpack; 6. addon mod.
std::set<std::string> m_name_conflicts;
};
int mtversion;
};
+struct ModStoreTitlePic {
+ int id;
+ std::string file;
+ std::string description;
+ int mod;
+};
+
struct ModStoreModDetails {
/* version_set?? */
std::vector<ModStoreCategoryInfo> categories;
ModAuthorInfo author;
ModLicenseInfo license;
+ ModStoreTitlePic titlepic;
int id;
std::string title;
std::string basename;