diff options
author | Aki <please@ignore.pl> | 2022-04-14 00:28:37 +0200 |
---|---|---|
committer | Aki <please@ignore.pl> | 2022-04-14 00:28:37 +0200 |
commit | 341c93b0fb4aedd262581ce6e81b700a9bdc1423 (patch) | |
tree | fcade8d6163d000e534134e32b64db126d766c9b /StarsEx/ModInfo.cpp | |
parent | 92de53ac4747fe3caf2ee4c4fa3dcb2ec86a5ef2 (diff) | |
download | starshatter-341c93b0fb4aedd262581ce6e81b700a9bdc1423.zip starshatter-341c93b0fb4aedd262581ce6e81b700a9bdc1423.tar.gz starshatter-341c93b0fb4aedd262581ce6e81b700a9bdc1423.tar.bz2 |
Switched to use new Sources everywhere applicable in the Loader
Diffstat (limited to 'StarsEx/ModInfo.cpp')
-rw-r--r-- | StarsEx/ModInfo.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/StarsEx/ModInfo.cpp b/StarsEx/ModInfo.cpp index 0c75ed1..07e6466 100644 --- a/StarsEx/ModInfo.cpp +++ b/StarsEx/ModInfo.cpp @@ -25,11 +25,11 @@ // +-------------------------------------------------------------------+ ModInfo::ModInfo() -: logo(0), distribute(false), enabled(false), catalog(0) +: logo(0), distribute(false), enabled(false), source(-1), catalog(0) { } ModInfo::ModInfo(const char* fname) -: logo(0), distribute(false), enabled(false), catalog(0) +: logo(0), distribute(false), enabled(false), source(-1), catalog(0) { if (fname && *fname) { Load(fname); @@ -37,7 +37,7 @@ ModInfo::ModInfo(const char* fname) } ModInfo::ModInfo(const char* n, const char* v, const char* u) -: name(n), logo(0), version(v), url(u), distribute(false), enabled(false), catalog(0) +: name(n), logo(0), version(v), url(u), distribute(false), enabled(false), source(-1), catalog(0) { } ModInfo::~ModInfo() @@ -257,13 +257,13 @@ ModInfo::Enable() DataLoader* loader = DataLoader::GetLoader(); if (loader && !enabled) { - loader->EnableDatafile(filename); + source = loader->MountDatafile(filename, DataLoader::Group::MOD); enabled = true; if (catalog) ShipDesign::LoadCatalog(catalog->Path(), catalog->File(), true); - ShipDesign::LoadSkins("/Mods/Skins/", filename); + ShipDesign::LoadSkins("/Mods/Skins/", source); for (int i = 0; i < campaigns.size(); i++) { ModCampaign* c = campaigns[i]; @@ -280,7 +280,8 @@ ModInfo::Disable() DataLoader* loader = DataLoader::GetLoader(); if (loader) { - loader->DisableDatafile(filename); + loader->UnmountSource(source); + source = -1; enabled = false; } |