mirror of https://github.com/zeldaret/mm.git
Fix build issue
This commit is contained in:
parent
2b50a1eab8
commit
ec3ccda941
|
@ -9,13 +9,13 @@ GLOBAL_ASM("./asm/non_matchings/z_scene/Scene_ReloadUnloadedObjects.asm")
|
||||||
|
|
||||||
s32 Scene_FindSceneObjectIndex(SceneContext* sceneCtxt, s16 objectId) {
|
s32 Scene_FindSceneObjectIndex(SceneContext* sceneCtxt, s16 objectId) {
|
||||||
s32 i;
|
s32 i;
|
||||||
|
|
||||||
for(i = 0; i < sceneCtxt->objectCount; i++) {
|
for(i = 0; i < sceneCtxt->objectCount; i++) {
|
||||||
if((sceneCtxt->objects[i].id < 0 ? -sceneCtxt->objects[i].id : sceneCtxt->objects[i].id) == objectId) {
|
if((sceneCtxt->objects[i].id < 0 ? -sceneCtxt->objects[i].id : sceneCtxt->objects[i].id) == objectId) {
|
||||||
return i;
|
return i;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -38,10 +38,10 @@ void Scene_HeaderCommand00(GlobalContext* ctxt, SceneCmd* entry) {
|
||||||
void* objectVramAddr;
|
void* objectVramAddr;
|
||||||
s16 temp16;
|
s16 temp16;
|
||||||
u8 unk20;
|
u8 unk20;
|
||||||
|
|
||||||
ctxt->linkActorEntry = (ActorEntry*)Lib_PtrSegToVirt((void*)entry->spawnList.segment) +
|
ctxt->linkActorEntry = (ActorEntry*)Lib_PtrSegToVirt((void*)entry->spawnList.segment) +
|
||||||
ctxt->setupEntranceList[ctxt->curSpawn].spawn;
|
ctxt->setupEntranceList[ctxt->curSpawn].spawn;
|
||||||
|
|
||||||
if ( (ctxt->linkActorEntry->params & 0x0F00) >> 8 == 0x0C ||
|
if ( (ctxt->linkActorEntry->params & 0x0F00) >> 8 == 0x0C ||
|
||||||
(gSaveContext.extra.unk10 == 0x02 && gSaveContext.extra.unk42 == 0x0CFF)
|
(gSaveContext.extra.unk10 == 0x02 && gSaveContext.extra.unk42 == 0x0CFF)
|
||||||
) {
|
) {
|
||||||
|
@ -50,18 +50,18 @@ void Scene_HeaderCommand00(GlobalContext* ctxt, SceneCmd* entry) {
|
||||||
}
|
}
|
||||||
|
|
||||||
loadReturn = Scene_LoadObject(&ctxt->sceneContext, 0x11);
|
loadReturn = Scene_LoadObject(&ctxt->sceneContext, 0x11);
|
||||||
|
|
||||||
global = ctxt;
|
global = ctxt;
|
||||||
objectVramAddr = global->sceneContext.objects[global->sceneContext.objectCount].vramAddr;
|
objectVramAddr = global->sceneContext.objects[global->sceneContext.objectCount].vramAddr;
|
||||||
|
|
||||||
ctxt->sceneContext.objectCount = loadReturn;
|
ctxt->sceneContext.objectCount = loadReturn;
|
||||||
ctxt->sceneContext.unk9 = loadReturn;
|
ctxt->sceneContext.unk9 = loadReturn;
|
||||||
|
|
||||||
unk20 = gSaveContext.perm.unk20;
|
unk20 = gSaveContext.perm.unk20;
|
||||||
temp16 = D_801C2730[unk20];
|
temp16 = D_801C2730[unk20];
|
||||||
|
|
||||||
actorOverlayTable[0].initInfo->objectId = temp16;
|
actorOverlayTable[0].initInfo->objectId = temp16;
|
||||||
|
|
||||||
Scene_LoadObject(&ctxt->sceneContext, temp16);
|
Scene_LoadObject(&ctxt->sceneContext, temp16);
|
||||||
|
|
||||||
ctxt->sceneContext.objects[ctxt->sceneContext.objectCount].vramAddr = objectVramAddr;
|
ctxt->sceneContext.objects[ctxt->sceneContext.objectCount].vramAddr = objectVramAddr;
|
||||||
|
@ -179,12 +179,12 @@ void Scene_HeaderCommand0F(GlobalContext* ctxt, SceneCmd* entry) {
|
||||||
s32 func_8012FF10(GlobalContext* ctxt, s32 fileIndex) {
|
s32 func_8012FF10(GlobalContext* ctxt, s32 fileIndex) {
|
||||||
s32 vromStart = D_801C2660[fileIndex].vromStart;
|
s32 vromStart = D_801C2660[fileIndex].vromStart;
|
||||||
s32 fileSize = D_801C2660[fileIndex].vromEnd - vromStart;
|
s32 fileSize = D_801C2660[fileIndex].vromEnd - vromStart;
|
||||||
|
|
||||||
if (fileSize) {
|
if (fileSize) {
|
||||||
ctxt->roomContext.unk74 = GameStateHeap_AllocFromEnd(&ctxt->state.heap, fileSize);
|
ctxt->roomContext.unk74 = GameStateHeap_AllocFromEnd(&ctxt->state.heap, fileSize);
|
||||||
return DmaMgr_SendRequest0((s32)ctxt->roomContext.unk74, vromStart, fileSize);
|
return DmaMgr_SendRequest0((s32)ctxt->roomContext.unk74, vromStart, fileSize);
|
||||||
}
|
}
|
||||||
|
|
||||||
// UB: Undefined behaviour to not have a return statement here, but it breaks matching to add one.
|
// UB: Undefined behaviour to not have a return statement here, but it breaks matching to add one.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -207,9 +207,9 @@ GLOBAL_ASM("./asm/non_matchings/z_scene/Scene_HeaderCommand10.asm")
|
||||||
// Scene Command 0x05: Wind Settings
|
// Scene Command 0x05: Wind Settings
|
||||||
void Scene_HeaderCommand05(GlobalContext* ctxt, SceneCmd* entry) {
|
void Scene_HeaderCommand05(GlobalContext* ctxt, SceneCmd* entry) {
|
||||||
s8 temp1 = entry->windSettings.unk4;
|
s8 temp1 = entry->windSettings.unk4;
|
||||||
s8 temp2 = entry->windSettings.unk5;
|
s8 temp2 = entry->windSettings.unk5;
|
||||||
s8 temp3 = entry->windSettings.unk6;
|
s8 temp3 = entry->windSettings.unk6;
|
||||||
|
|
||||||
ctxt->kankyoContext.unkAC = temp1;
|
ctxt->kankyoContext.unkAC = temp1;
|
||||||
ctxt->kankyoContext.unkAE = temp2;
|
ctxt->kankyoContext.unkAE = temp2;
|
||||||
ctxt->kankyoContext.unkB0 = temp3;
|
ctxt->kankyoContext.unkB0 = temp3;
|
||||||
|
@ -230,8 +230,8 @@ void Scene_HeaderCommand15(GlobalContext* ctxt, SceneCmd* entry) {
|
||||||
ctxt->unk814 = entry->soundSettings.musicSeq;
|
ctxt->unk814 = entry->soundSettings.musicSeq;
|
||||||
ctxt->unk815 = entry->soundSettings.nighttimeSFX;
|
ctxt->unk815 = entry->soundSettings.nighttimeSFX;
|
||||||
if (gSaveContext.extra.unk276 == 0xFF || func_801A8A50(0) == 0x57) {
|
if (gSaveContext.extra.unk276 == 0xFF || func_801A8A50(0) == 0x57) {
|
||||||
func_801A400C(entry->soundSettings.bgmId);
|
audio_setBGM(entry->soundSettings.bgmId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Scene Command 0x16: Echo Setting
|
// Scene Command 0x16: Echo Setting
|
||||||
|
@ -243,11 +243,11 @@ void Scene_HeaderCommand16(GlobalContext* ctxt, SceneCmd* entry) {
|
||||||
void Scene_HeaderCommand18(GlobalContext* ctxt, SceneCmd* entry) {
|
void Scene_HeaderCommand18(GlobalContext* ctxt, SceneCmd* entry) {
|
||||||
SceneCmd** altHeaderList;
|
SceneCmd** altHeaderList;
|
||||||
SceneCmd* altHeader;
|
SceneCmd* altHeader;
|
||||||
|
|
||||||
if (gSaveContext.extra.sceneSetupIndex) {
|
if (gSaveContext.extra.sceneSetupIndex) {
|
||||||
altHeaderList = (SceneCmd**)Lib_PtrSegToVirt((void*)entry->altHeaders.segment);
|
altHeaderList = (SceneCmd**)Lib_PtrSegToVirt((void*)entry->altHeaders.segment);
|
||||||
altHeader = altHeaderList[gSaveContext.extra.sceneSetupIndex - 1];
|
altHeader = altHeaderList[gSaveContext.extra.sceneSetupIndex - 1];
|
||||||
|
|
||||||
if (altHeader != NULL) {
|
if (altHeader != NULL) {
|
||||||
Scene_ProcessHeader(ctxt, (SceneCmd*)Lib_PtrSegToVirt(altHeader));
|
Scene_ProcessHeader(ctxt, (SceneCmd*)Lib_PtrSegToVirt(altHeader));
|
||||||
(entry + 1)->base.code = 0x14;
|
(entry + 1)->base.code = 0x14;
|
||||||
|
|
Loading…
Reference in New Issue