mirror of
https://github.com/Mauler125/r5sdk.git
synced 2025-02-09 19:15:03 +01:00
Fix edge case bug where level hasn't changed while it did
Fix bug where 'Mod_LevelHasChanged(...)' returns false even though it had changed. The static var was set in a different function which worked with the old system. The static var is now set within 'Mod_GetLevelSettings()', if 'Mod_LevelHasChanged()' returns true.
This commit is contained in:
parent
634184eb56
commit
734e24b355
@ -362,7 +362,6 @@ bool Mod_LoadPakForMap(const char* szLevelName)
|
||||
if (Mod_LevelHasChanged(szLevelName))
|
||||
s_bLevelResourceInitialized = false;
|
||||
|
||||
s_svLevelName = szLevelName;
|
||||
return v_Mod_LoadPakForMap(szLevelName);
|
||||
}
|
||||
|
||||
@ -376,9 +375,7 @@ KeyValues* Mod_GetLevelSettings(const char* pszLevelName)
|
||||
if (s_pLevelSetKV)
|
||||
{
|
||||
if (!Mod_LevelHasChanged(pszLevelName))
|
||||
{
|
||||
return s_pLevelSetKV;
|
||||
}
|
||||
|
||||
s_pLevelSetKV->DeleteThis();
|
||||
}
|
||||
@ -386,7 +383,9 @@ KeyValues* Mod_GetLevelSettings(const char* pszLevelName)
|
||||
char szPathBuffer[MAX_PATH];
|
||||
snprintf(szPathBuffer, sizeof(szPathBuffer), "scripts/levels/settings/%s.kv", pszLevelName);
|
||||
|
||||
s_svLevelName = pszLevelName;
|
||||
s_pLevelSetKV = FileSystem()->LoadKeyValues(IFileSystem::TYPE_LEVELSETTINGS, szPathBuffer, "GAME");
|
||||
|
||||
return s_pLevelSetKV;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user