From 016c385d7f644ef9d3a860b7f2608a6f9c66a942 Mon Sep 17 00:00:00 2001 From: MysterD Date: Mon, 5 Jun 2023 15:19:19 -0700 Subject: [PATCH] Fix DynOS_Lvl_GetActiveGfx() --- data/dynos_mgr_lvl.cpp | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/data/dynos_mgr_lvl.cpp b/data/dynos_mgr_lvl.cpp index 7645f8491..00818d20f 100644 --- a/data/dynos_mgr_lvl.cpp +++ b/data/dynos_mgr_lvl.cpp @@ -96,12 +96,13 @@ void DynOS_Lvl_Activate(s32 modIndex, const SysPath &aFilename, const char *aLev GfxData* DynOS_Lvl_GetActiveGfx(void) { auto& _CustomLevelScripts = DynOS_Lvl_GetArray(); - for (s32 i = 0; i < _CustomLevelScripts.Count(); ++i) { auto& gfxData = _CustomLevelScripts[i].second; auto& scripts = gfxData->mLevelScripts; - if (gLevelScriptActive == scripts[scripts.Count() - 1]->mData) { - return gfxData; + for (auto& s : scripts) { + if (gLevelScriptActive == s->mData) { + return gfxData; + } } } return NULL; @@ -173,7 +174,6 @@ double_break: void *DynOS_Lvl_Override(void *aCmd) { auto& _OverrideLevelScripts = DynosOverrideLevelScripts(); - for (auto& overrideStruct : _OverrideLevelScripts) { if (aCmd == overrideStruct.originalScript || aCmd == overrideStruct.newScript) { aCmd = (void*)overrideStruct.newScript; @@ -184,9 +184,12 @@ void *DynOS_Lvl_Override(void *aCmd) { auto& _CustomLevelScripts = DynOS_Lvl_GetArray(); for (auto& script : _CustomLevelScripts) { - if (aCmd == script.second->mLevelScripts[0]->mData) { - gLevelScriptModIndex = script.second->mModIndex; - gLevelScriptActive = (LevelScript*)aCmd; + auto& scripts = script.second->mLevelScripts; + for (auto& s : scripts) { + if (aCmd == s->mData) { + gLevelScriptModIndex = script.second->mModIndex; + gLevelScriptActive = (LevelScript*)aCmd; + } } }