summaryrefslogtreecommitdiff
path: root/soh/src/code
diff options
context:
space:
mode:
authorNicholas Estelami <NEstelami@users.noreply.github.com>2022-03-31 19:42:44 -0400
committerGitHub <noreply@github.com>2022-03-31 19:42:44 -0400
commitc80f9fbd57d2ae90fa87a1e34d906a265de20e55 (patch)
tree9b48bf536d2ffff635fc571a20b166d78229ac20 /soh/src/code
parent572e9fb9d0c6475f7bf9cf0801a50ff19c0567c5 (diff)
Added support for multiple game versions (#107)
* WIP Multiversion support * GC PAL Non-MQ support complete * Updated OtrGui to handle different game versions * Added version file * Added new extract mode to ZAPD and optimized OTR gen time * Fixed bug causing crash * Further optimized OTRExporter, saving around ~20 seconds. * ZAPD is now multi-threaded. * Fixed merge issue * Fixed memory leak and fog issue on pause screen. * Additional fog fixes. Co-authored-by: Jack Walker <7463599+Jack-Walker@users.noreply.github.com>
Diffstat (limited to 'soh/src/code')
-rw-r--r--soh/src/code/z_play.c20
-rw-r--r--soh/src/code/z_player_lib.c2
-rw-r--r--soh/src/code/z_vr_box.c5
3 files changed, 4 insertions, 23 deletions
diff --git a/soh/src/code/z_play.c b/soh/src/code/z_play.c
index f0880b3da..193b14164 100644
--- a/soh/src/code/z_play.c
+++ b/soh/src/code/z_play.c
@@ -1495,26 +1495,6 @@ void Gameplay_InitScene(GlobalContext* globalCtx, s32 spawn)
void Gameplay_SpawnScene(GlobalContext* globalCtx, s32 sceneNum, s32 spawn) {
OTRGameplay_SpawnScene(globalCtx, sceneNum, spawn);
- return;
-
- SceneTableEntry* scene = &gSceneTable[sceneNum];
-
- scene->unk_13 = 0;
- globalCtx->loadedScene = scene;
- globalCtx->sceneNum = sceneNum;
- globalCtx->sceneConfig = scene->config;
-
- osSyncPrintf("\nSCENE SIZE %fK\n", (scene->sceneFile.vromEnd - scene->sceneFile.vromStart) / 1024.0f);
-
- globalCtx->sceneSegment = Gameplay_LoadFile(globalCtx, &scene->sceneFile);
- scene->unk_13 = 0;
- ASSERT(globalCtx->sceneSegment != NULL, "this->sceneSegment != NULL", "../z_play.c", 4960);
-
- gSegments[2] = VIRTUAL_TO_PHYSICAL(globalCtx->sceneSegment);
-
- Gameplay_InitScene(globalCtx, spawn);
-
- osSyncPrintf("ROOM SIZE=%fK\n", func_80096FE8(globalCtx, &globalCtx->roomCtx) / 1024.0f);
}
void func_800C016C(GlobalContext* globalCtx, Vec3f* src, Vec3f* dest) {
diff --git a/soh/src/code/z_player_lib.c b/soh/src/code/z_player_lib.c
index d7344d7c3..87a7009ec 100644
--- a/soh/src/code/z_player_lib.c
+++ b/soh/src/code/z_player_lib.c
@@ -1625,6 +1625,8 @@ void func_80091A24(GlobalContext* globalCtx, void* seg04, void* seg06, SkelAnime
POLY_XLU_DISP = ohNo;
}
+ POLY_OPA_DISP = Gameplay_SetFog(globalCtx, POLY_OPA_DISP++);
+
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_player_lib.c", 3288);
}
diff --git a/soh/src/code/z_vr_box.c b/soh/src/code/z_vr_box.c
index 7925e5cb9..e532edf31 100644
--- a/soh/src/code/z_vr_box.c
+++ b/soh/src/code/z_vr_box.c
@@ -1001,9 +1001,8 @@ void Skybox_Setup(GlobalContext* globalCtx, SkyboxContext* skyboxCtx, s16 skybox
LoadSkyboxPalette(globalCtx, skyboxCtx, 2, gBackAlleyHouseBg3Tlut, 16, 16);
break;
default:
- skyboxCtx->staticSegments[0] = GameState_Alloc(&globalCtx->state, 0x10000 * 8, "../z_vr_box.c", 1226);
- //skyboxCtx->staticSegments[1] = GameState_Alloc(&globalCtx->state, 0x10000 * 8, "../z_vr_box.c", 1226);
- skyboxCtx->staticSegments[1] = malloc(0x10000 * 8); // OTRTODO
+ skyboxCtx->staticSegments[0] = GameState_Alloc(&globalCtx->state, 0x10000 * 4, "../z_vr_box.c", 1226);
+ skyboxCtx->staticSegments[1] = GameState_Alloc(&globalCtx->state, 0x10000 * 4, "../z_vr_box.c", 1226);
skyboxCtx->palettes = GameState_Alloc(&globalCtx->state, 0x1000, "../z_vr_box.c", 1226);
break;
}