Fix: Rando settings not being initialized in time (#2461)
* fix entrance init and entrance tracker not working properly when no spoiler log is loaded * fix rando adult trade spoilable items reverting when no spoiler log loaded
This commit is contained in:
parent
1e9f8df33b
commit
67421179e4
|
@ -204,6 +204,8 @@ void SaveManager::LoadRandomizerVersion2() {
|
||||||
|
|
||||||
std::shared_ptr<Randomizer> randomizer = OTRGlobals::Instance->gRandomizer;
|
std::shared_ptr<Randomizer> randomizer = OTRGlobals::Instance->gRandomizer;
|
||||||
|
|
||||||
|
randomizer->LoadRandomizerSettings("");
|
||||||
|
|
||||||
size_t merchantPricesSize = 0;
|
size_t merchantPricesSize = 0;
|
||||||
SaveManager::Instance->LoadData("merchantPricesSize", merchantPricesSize);
|
SaveManager::Instance->LoadData("merchantPricesSize", merchantPricesSize);
|
||||||
|
|
||||||
|
|
|
@ -197,12 +197,6 @@ void Sram_OpenSave() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Setup the modified entrance table and entrance shuffle table for rando
|
|
||||||
if (gSaveContext.n64ddFlag) {
|
|
||||||
Entrance_Init();
|
|
||||||
Entrance_InitEntranceTrackingData();
|
|
||||||
}
|
|
||||||
|
|
||||||
osSyncPrintf("scene_no = %d\n", gSaveContext.entranceIndex);
|
osSyncPrintf("scene_no = %d\n", gSaveContext.entranceIndex);
|
||||||
osSyncPrintf(VT_RST);
|
osSyncPrintf(VT_RST);
|
||||||
|
|
||||||
|
|
|
@ -2143,13 +2143,19 @@ void FileChoose_LoadGame(GameState* thisx) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Handle randomized spawn positions after the save context has been setup from load
|
if (gSaveContext.n64ddFlag) {
|
||||||
// When remeber save location is on, set save warp if the save was in an a grotto, or
|
// Setup the modified entrance table and entrance shuffle table for rando
|
||||||
// the entrance index is -1 from shuffle overwarld spawn
|
Entrance_Init();
|
||||||
if (gSaveContext.n64ddFlag && Randomizer_GetSettingValue(RSK_SHUFFLE_ENTRANCES) && ((!CVarGetInteger("gRememberSaveLocation", 0) ||
|
Entrance_InitEntranceTrackingData();
|
||||||
gSaveContext.savedSceneNum == SCENE_YOUSEI_IZUMI_TATE || gSaveContext.savedSceneNum == SCENE_KAKUSIANA) ||
|
|
||||||
(CVarGetInteger("gRememberSaveLocation", 0) && Randomizer_GetSettingValue(RSK_SHUFFLE_OVERWORLD_SPAWNS) && gSaveContext.entranceIndex == -1))) {
|
// Handle randomized spawn positions after the save context has been setup from load
|
||||||
Entrance_SetSavewarpEntrance();
|
// When remeber save location is on, set save warp if the save was in an a grotto, or
|
||||||
|
// the entrance index is -1 from shuffle overwarld spawn
|
||||||
|
if (Randomizer_GetSettingValue(RSK_SHUFFLE_ENTRANCES) && ((!CVarGetInteger("gRememberSaveLocation", 0) ||
|
||||||
|
gSaveContext.savedSceneNum == SCENE_YOUSEI_IZUMI_TATE || gSaveContext.savedSceneNum == SCENE_KAKUSIANA) ||
|
||||||
|
(CVarGetInteger("gRememberSaveLocation", 0) && Randomizer_GetSettingValue(RSK_SHUFFLE_OVERWORLD_SPAWNS) && gSaveContext.entranceIndex == -1))) {
|
||||||
|
Entrance_SetSavewarpEntrance();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue