aboutsummaryrefslogtreecommitdiff
path: root/NorthstarDLL/mods/modmanager.h
diff options
context:
space:
mode:
authorcat_or_not <41955154+catornot@users.noreply.github.com>2023-12-14 07:07:02 -0500
committerGitHub <noreply@github.com>2023-12-14 13:07:02 +0100
commit43f0bce0596ec60434e48d8037ffed373bc13852 (patch)
tree717f8728ad41369a9e8c6dfe928460e9163014c0 /NorthstarDLL/mods/modmanager.h
parent0976a3500e6774258322ab2bc80ebd515c175e77 (diff)
downloadNorthstarLauncher-43f0bce0596ec60434e48d8037ffed373bc13852.tar.gz
NorthstarLauncher-43f0bce0596ec60434e48d8037ffed373bc13852.zip
Add plugin dependency constants (#458)v1.21.0-rc1
Adds dependency constants for plugins so mods can rely on plugins without always producing script errors when the plugin is missing
Diffstat (limited to 'NorthstarDLL/mods/modmanager.h')
-rw-r--r--NorthstarDLL/mods/modmanager.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/NorthstarDLL/mods/modmanager.h b/NorthstarDLL/mods/modmanager.h
index 813edec7..c141414f 100644
--- a/NorthstarDLL/mods/modmanager.h
+++ b/NorthstarDLL/mods/modmanager.h
@@ -7,6 +7,7 @@
#include <string>
#include <vector>
#include <filesystem>
+#include <unordered_set>
const std::string MOD_FOLDER_SUFFIX = "\\mods";
const std::string THUNDERSTORE_MOD_FOLDER_SUFFIX = "\\packages";
@@ -124,6 +125,7 @@ class Mod
// hashed with STR_HASH
std::unordered_map<std::string, std::string> DependencyConstants;
+ std::vector<std::string> PluginDependencyConstants;
public:
Mod(fs::path modPath, char* jsonBuf);
@@ -134,6 +136,7 @@ class Mod
void ParseScripts(rapidjson_document& json);
void ParseLocalization(rapidjson_document& json);
void ParseDependencies(rapidjson_document& json);
+ void ParsePluginDependencies(rapidjson_document& json);
void ParseInitScript(rapidjson_document& json);
};
@@ -160,6 +163,7 @@ class ModManager
std::vector<Mod> m_LoadedMods;
std::unordered_map<std::string, ModOverrideFile> m_ModFiles;
std::unordered_map<std::string, std::string> m_DependencyConstants;
+ std::unordered_set<std::string> m_PluginDependencyConstants;
public:
ModManager();