aboutsummaryrefslogtreecommitdiff
path: root/NorthstarDLL/mods/modmanager.h
diff options
context:
space:
mode:
Diffstat (limited to 'NorthstarDLL/mods/modmanager.h')
-rw-r--r--NorthstarDLL/mods/modmanager.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/NorthstarDLL/mods/modmanager.h b/NorthstarDLL/mods/modmanager.h
index 253b7812..940f1967 100644
--- a/NorthstarDLL/mods/modmanager.h
+++ b/NorthstarDLL/mods/modmanager.h
@@ -126,6 +126,9 @@ struct ModOverrideFile
fs::file_time_type m_tLastWriteTime;
};
+// defined in reloadmodweapons.cpp
+extern struct SidedWeaponReloadPointers;
+
class ModManager
{
private:
@@ -165,7 +168,6 @@ class ModManager
bool bPlaylists = false;
bool bAimAssistSettings = false;
bool bMaterials = false; // vmts
- bool bWeaponSettings = false;
bool bPlayerSettings = false;
bool bAiSettings = false;
bool bDamageDefs = false; // damagedefs
@@ -177,6 +179,7 @@ class ModManager
bool bRPaks = false;
// assets that we can reload individually
+ std::unordered_set<std::string> setsWeaponSettings;
//std::vector<ModAudioOverride> vAudioOverrides
} m_AssetTypesToReload;
@@ -224,6 +227,9 @@ class ModManager
void TryBuildKeyValues(const char* filename);
void BuildKBActionsList();
+ // asset reloading funcs
+ bool TryReloadWeapon(const char* pWeaponName, const SidedWeaponReloadPointers* pReloadPointers);
+
// for std::views::filter, e.g. for (Mod& mod : g_pModManager::GetMods() | ModManager::FilterEnabled)
static inline constexpr auto FilterEnabled = std::views::filter([](Mod& mod) { return mod.m_bEnabled; });
static inline constexpr auto FilterRemote = std::views::filter([](Mod& mod) { return mod.m_bRemote; });