diff options
| author | engineer124 <47598039+engineer124@users.noreply.github.com> | 2022-05-13 04:35:31 +1000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-05-12 20:35:31 +0200 |
| commit | bf56c94f0fdd31774441c9a4473c392af069ce3e (patch) | |
| tree | 1ecd06b6ae04f5d6c97093e1a31546d71c4a5d88 /src/code | |
| parent | 92aef346f2bd7167b892beddafd0959801df0e3c (diff) | |
Document Sub-Cameras (#989)
* Copying SubCam Changes from PR 908, made it to the end of bosses
* Finish copying over PR
* format
* More cleanup
* clean-up
* PR Suggestions, Clean-Up, Improvement in CS
* Remove substructs from fd/fd2
* format
* Improve fishing
* minor fix
* Make CutsceneCameraDir more general
* `sActiveCamMove` -> `sCamMove`
* Fix conflict with object kankyo
* Add CAM_ID_MAIN to object_kankyo
* Improve cam cutscenes further
* Revert cutscene cmd names (better for a separate PR)
* At -> LookAt in the context of Cutscenes
* Missed naming in diving game
* Format
* Fill in Ganon2 Names (now that it's matching)
* format
* `sActiveCamId` -> `sReturnToCamId`
* activeCamId -> returnToCamId
* Discord Discussions
* FIRST
* Move macro to bottom, comments
* More suggestions
* PR suggestion, cleanup comment
* Oops
* add comments
* Adjust comment
* Change edge-case
* whoops
Co-authored-by: fig02 <fig02srl@gmail.com>
Diffstat (limited to 'src/code')
| -rw-r--r-- | src/code/z_actor.c | 2 | ||||
| -rw-r--r-- | src/code/z_camera.c | 86 | ||||
| -rw-r--r-- | src/code/z_demo.c | 122 | ||||
| -rw-r--r-- | src/code/z_horse.c | 2 | ||||
| -rw-r--r-- | src/code/z_message_PAL.c | 4 | ||||
| -rw-r--r-- | src/code/z_onepointdemo.c | 540 | ||||
| -rw-r--r-- | src/code/z_play.c | 68 | ||||
| -rw-r--r-- | src/code/z_player_lib.c | 4 | ||||
| -rw-r--r-- | src/code/z_quake.c | 14 | ||||
| -rw-r--r-- | src/code/z_room.c | 37 |
10 files changed, 439 insertions, 440 deletions
diff --git a/src/code/z_actor.c b/src/code/z_actor.c index 4f6c2bf26..b0b5aba84 100644 --- a/src/code/z_actor.c +++ b/src/code/z_actor.c @@ -1010,7 +1010,7 @@ void func_8002DE04(GlobalContext* globalCtx, Actor* actorA, Actor* actorB) { void func_8002DE74(GlobalContext* globalCtx, Player* player) { if ((globalCtx->roomCtx.curRoom.unk_03 != 4) && func_800C0CB8(globalCtx)) { - Camera_ChangeSetting(Gameplay_GetCamera(globalCtx, MAIN_CAM), CAM_SET_HORSE); + Camera_ChangeSetting(Gameplay_GetCamera(globalCtx, CAM_ID_MAIN), CAM_SET_HORSE); } } diff --git a/src/code/z_camera.c b/src/code/z_camera.c index 33b377aeb..a00611af3 100644 --- a/src/code/z_camera.c +++ b/src/code/z_camera.c @@ -722,7 +722,7 @@ void Camera_CopyDataToRegs(Camera* camera, s16 mode) { s32 i; if (PREG(82)) { - osSyncPrintf("camera: res: stat (%d/%d/%d)\n", camera->thisIdx, camera->setting, mode); + osSyncPrintf("camera: res: stat (%d/%d/%d)\n", camera->camId, camera->setting, mode); } values = sCameraSettings[camera->setting].cameraModes[mode].values; @@ -3345,7 +3345,7 @@ s32 Camera_KeepOn3(Camera* camera) { if (RELOAD_PARAMS(camera)) { if (camera->globalCtx->view.unk_124 == 0) { camera->unk_14C |= 0x20; - camera->globalCtx->view.unk_124 = camera->thisIdx | 0x50; + camera->globalCtx->view.unk_124 = camera->camId | 0x50; return 1; } camera->unk_14C &= ~0x20; @@ -3525,7 +3525,7 @@ s32 Camera_KeepOn4(Camera* camera) { if (camera->globalCtx->view.unk_124 == 0) { camera->unk_14C |= 0x20; camera->unk_14C &= ~(0x4 | 0x2); - camera->globalCtx->view.unk_124 = camera->thisIdx | 0x50; + camera->globalCtx->view.unk_124 = camera->camId | 0x50; return 1; } rwData->unk_14 = *temp_s0; @@ -3538,7 +3538,7 @@ s32 Camera_KeepOn4(Camera* camera) { camera->animState = 20; camera->unk_14C |= 0x20; camera->unk_14C &= ~(0x4 | 0x2); - camera->globalCtx->view.unk_124 = camera->thisIdx | 0x50; + camera->globalCtx->view.unk_124 = camera->camId | 0x50; return 1; } @@ -4205,7 +4205,7 @@ s32 Camera_Subj3(Camera* camera) { playerHeight = Player_GetHeight(camera->player); if (camera->globalCtx->view.unk_124 == 0) { - camera->globalCtx->view.unk_124 = camera->thisIdx | 0x50; + camera->globalCtx->view.unk_124 = camera->camId | 0x50; return true; } @@ -4334,7 +4334,7 @@ s32 Camera_Subj4(Camera* camera) { } if (camera->globalCtx->view.unk_124 == 0) { - camera->globalCtx->view.unk_124 = (camera->thisIdx | 0x50); + camera->globalCtx->view.unk_124 = (camera->camId | 0x50); rwData->unk_24 = camera->xzSpeed; return true; } @@ -5137,7 +5137,7 @@ s32 Camera_Unique9(Camera* camera) { } } else { // We've gone through all the keyframes. - if (camera->thisIdx != MAIN_CAM) { + if (camera->camId != CAM_ID_MAIN) { camera->timer = 0; } return true; @@ -5475,20 +5475,20 @@ s32 Camera_Unique9(Camera* camera) { break; case 19: { // Change the parent camera (or default)'s mode to normal - s32 camIdx = camera->parentCamIdx <= SUBCAM_NONE ? MAIN_CAM : camera->parentCamIdx; + s32 camIdx = camera->parentCamId <= CAM_ID_NONE ? CAM_ID_MAIN : camera->parentCamId; Camera_ChangeModeFlags(camera->globalCtx->cameraPtrs[camIdx], CAM_MODE_NORMAL, 1); } case 18: { // copy the current camera to the parent (or default)'s camera. - s32 camIdx = camera->parentCamIdx <= SUBCAM_NONE ? MAIN_CAM : camera->parentCamIdx; + s32 camIdx = camera->parentCamId <= CAM_ID_NONE ? CAM_ID_MAIN : camera->parentCamId; Camera* cam = camera->globalCtx->cameraPtrs[camIdx]; *eye = *eyeNext; Camera_Copy(cam, camera); } default: - if (camera->thisIdx != MAIN_CAM) { + if (camera->camId != CAM_ID_MAIN) { camera->timer = 0; } } @@ -5911,7 +5911,7 @@ s32 Camera_Demo5(Camera* camera) { D_8011D6AC[1].eyeTargetInit.x = Rand_ZeroOne() * 10.0f; ONEPOINT_CS_INFO(camera)->keyFrames = D_8011D6AC; ONEPOINT_CS_INFO(camera)->keyFrameCnt = ARRAY_COUNT(D_8011D6AC); - if (camera->parentCamIdx != MAIN_CAM) { + if (camera->parentCamId != CAM_ID_MAIN) { ONEPOINT_CS_INFO(camera)->keyFrameCnt--; } else { camera->timer += D_8011D6AC[2].timerInit; @@ -5921,7 +5921,7 @@ s32 Camera_Demo5(Camera* camera) { D_8011D724[1].timerInit = camera->timer - 1; ONEPOINT_CS_INFO(camera)->keyFrames = D_8011D724; ONEPOINT_CS_INFO(camera)->keyFrameCnt = ARRAY_COUNT(D_8011D724); - if (camera->parentCamIdx != MAIN_CAM) { + if (camera->parentCamId != CAM_ID_MAIN) { ONEPOINT_CS_INFO(camera)->keyFrameCnt--; } else { camera->timer += D_8011D724[2].timerInit; @@ -5944,7 +5944,7 @@ s32 Camera_Demo5(Camera* camera) { D_8011D79C[1].timerInit = camera->timer - 1; - if (camera->parentCamIdx != MAIN_CAM) { + if (camera->parentCamId != CAM_ID_MAIN) { ONEPOINT_CS_INFO(camera)->keyFrameCnt -= 2; } else { camera->timer += D_8011D79C[2].timerInit + D_8011D79C[3].timerInit; @@ -5955,7 +5955,7 @@ s32 Camera_Demo5(Camera* camera) { D_8011D83C[0].timerInit = camera->timer; ONEPOINT_CS_INFO(camera)->keyFrames = D_8011D83C; ONEPOINT_CS_INFO(camera)->keyFrameCnt = ARRAY_COUNT(D_8011D83C); - if (camera->parentCamIdx != MAIN_CAM) { + if (camera->parentCamId != CAM_ID_MAIN) { ONEPOINT_CS_INFO(camera)->keyFrameCnt--; } else { camera->timer += D_8011D83C[1].timerInit; @@ -5969,7 +5969,7 @@ s32 Camera_Demo5(Camera* camera) { D_8011D88C[0].timerInit = camera->timer; ONEPOINT_CS_INFO(camera)->keyFrames = D_8011D88C; ONEPOINT_CS_INFO(camera)->keyFrameCnt = ARRAY_COUNT(D_8011D88C); - if (camera->parentCamIdx != MAIN_CAM) { + if (camera->parentCamId != CAM_ID_MAIN) { ONEPOINT_CS_INFO(camera)->keyFrameCnt--; } else { camera->timer += D_8011D88C[1].timerInit; @@ -5987,7 +5987,7 @@ s32 Camera_Demo5(Camera* camera) { D_8011D8DC[1].timerInit = (s16)(eyeTargetDist * 0.005f) + 8; ONEPOINT_CS_INFO(camera)->keyFrames = D_8011D8DC; ONEPOINT_CS_INFO(camera)->keyFrameCnt = ARRAY_COUNT(D_8011D8DC); - if (camera->parentCamIdx != MAIN_CAM) { + if (camera->parentCamId != CAM_ID_MAIN) { ONEPOINT_CS_INFO(camera)->keyFrameCnt -= 2; } else { camera->timer += D_8011D8DC[1].timerInit + D_8011D8DC[2].timerInit; @@ -6024,7 +6024,7 @@ s32 Camera_Demo5(Camera* camera) { } ONEPOINT_CS_INFO(camera)->keyFrames = D_8011D954; ONEPOINT_CS_INFO(camera)->keyFrameCnt = ARRAY_COUNT(D_8011D954); - if (camera->parentCamIdx != MAIN_CAM) { + if (camera->parentCamId != CAM_ID_MAIN) { ONEPOINT_CS_INFO(camera)->keyFrameCnt -= 2; } else { camera->timer += D_8011D954[2].timerInit + D_8011D954[3].timerInit; @@ -6049,7 +6049,7 @@ s32 Camera_Demo5(Camera* camera) { } ONEPOINT_CS_INFO(camera)->keyFrames = D_8011D9F4; ONEPOINT_CS_INFO(camera)->keyFrameCnt = ARRAY_COUNT(D_8011D9F4); - if (camera->parentCamIdx != MAIN_CAM) { + if (camera->parentCamId != CAM_ID_MAIN) { if (camera->globalCtx->state.frames & 1) { D_8011D9F4[0].rollTargetInit = -D_8011D9F4[0].rollTargetInit; D_8011D9F4[1].rollTargetInit = -D_8011D9F4[1].rollTargetInit; @@ -6111,7 +6111,7 @@ s32 Camera_Demo6(Camera* camera) { s16 stateTimers[4]; Demo6ReadWriteData* rwData = &camera->paramData.demo6.rwData; - mainCam = Gameplay_GetCamera(camera->globalCtx, MAIN_CAM); + mainCam = Gameplay_GetCamera(camera->globalCtx, CAM_ID_MAIN); camFocus = camera->target; stateTimers[1] = 0x37; stateTimers[2] = 0x46; @@ -6216,7 +6216,7 @@ s32 Camera_Demo9(Camera* camera) { f32* camFOV = &camera->fov; Demo9ReadWriteData* rwData = &camera->paramData.demo9.rwData; - mainCam = Gameplay_GetCamera(camera->globalCtx, MAIN_CAM); + mainCam = Gameplay_GetCamera(camera->globalCtx, CAM_ID_MAIN); mainCamPlayerPosRot = &mainCam->playerPosRot; if (RELOAD_PARAMS(camera) || R_RELOAD_CAM_PARAMS) { values = sCameraSettings[camera->setting].cameraModes[camera->mode].values; @@ -6306,7 +6306,7 @@ s32 Camera_Demo9(Camera* camera) { if (rwData->finishAction == 0x2000) { // finish action = 0x2000, run OnePointCs 0x3FC (Dramatic Return to Link) onePointTimer = onePointCamData->initTimer < 50 ? 5 : onePointCamData->initTimer / 5; - OnePointCutscene_Init(camera->globalCtx, 1020, onePointTimer, NULL, camera->parentCamIdx); + OnePointCutscene_Init(camera->globalCtx, 1020, onePointTimer, NULL, camera->parentCamId); } } else { // finish action = 0x1000, copy the current camera's values to the @@ -7019,7 +7019,7 @@ void Camera_InitPlayerSettings(Camera* camera, Player* player) { Camera_QRegInit(); osSyncPrintf(VT_FGCOL(BLUE) "camera: personalize ---" VT_RST "\n"); - if (camera->thisIdx == MAIN_CAM) { + if (camera->camId == CAM_ID_MAIN) { Camera_UpdateWater(camera); } } @@ -7035,7 +7035,7 @@ s16 Camera_ChangeStatus(Camera* camera, s16 status) { } if (PREG(82)) { - osSyncPrintf("camera: res: stat (%d/%d/%d)\n", camera->thisIdx, camera->setting, camera->mode); + osSyncPrintf("camera: res: stat (%d/%d/%d)\n", camera->camId, camera->setting, camera->mode); } if (status == CAM_STAT_ACTIVE && camera->status != CAM_STAT_ACTIVE) { @@ -7058,7 +7058,7 @@ void Camera_PrintSettings(Camera* camera) { char sp48[8]; s32 i; - if ((OREG(0) & 1) && (camera->globalCtx->activeCamera == camera->thisIdx) && !gDbgCamEnabled) { + if ((OREG(0) & 1) && (camera->globalCtx->activeCamId == camera->camId) && !gDbgCamEnabled) { for (i = 0; i < NUM_CAMS; i++) { if (camera->globalCtx->cameraPtrs[i] == NULL) { sp58[i] = '-'; @@ -7090,7 +7090,7 @@ void Camera_PrintSettings(Camera* camera) { sp58[i] = '\0'; sp48[i] = '\0'; - sp48[camera->globalCtx->activeCamera] = 'a'; + sp48[camera->globalCtx->activeCamId] = 'a'; func_8006376C(3, 0x16, 5, sp58); func_8006376C(3, 0x16, 1, sp48); func_8006376C(3, 0x17, 5, "S:"); @@ -7260,7 +7260,7 @@ s32 Camera_UpdateHotRoom(Camera* camera) { s32 Camera_DbgChangeMode(Camera* camera) { s32 changeDir = 0; - if (!gDbgCamEnabled && camera->globalCtx->activeCamera == MAIN_CAM) { + if (!gDbgCamEnabled && camera->globalCtx->activeCamId == CAM_ID_MAIN) { if (CHECK_BTN_ALL(D_8015BD7C->state.input[2].press.button, BTN_CUP)) { osSyncPrintf("attention sound URGENCY\n"); func_80078884(NA_SE_SY_ATTENTION_URGENCY); @@ -7387,7 +7387,7 @@ Vec3s Camera_Update(Camera* camera) { QuakeCamCalc quake; Player* player; - player = camera->globalCtx->cameraPtrs[MAIN_CAM]->player; + player = camera->globalCtx->cameraPtrs[CAM_ID_MAIN]->player; if (R_DBG_CAM_UPDATE) { osSyncPrintf("camera: in %x\n", camera); @@ -7494,7 +7494,7 @@ Vec3s Camera_Update(Camera* camera) { if ((gSaveContext.gameMode != 0) && (gSaveContext.gameMode != 3)) { sCameraInterfaceFlags = 0; Camera_UpdateInterface(sCameraInterfaceFlags); - } else if ((D_8011D3F0 != 0) && (camera->thisIdx == MAIN_CAM)) { + } else if ((D_8011D3F0 != 0) && (camera->camId == CAM_ID_MAIN)) { D_8011D3F0--; sCameraInterfaceFlags = 0x3200; Camera_UpdateInterface(sCameraInterfaceFlags); @@ -7626,13 +7626,13 @@ Vec3s Camera_Update(Camera* camera) { * When the camera's timer is 0, change the camera to its parent */ void Camera_Finish(Camera* camera) { - Camera* mainCam = camera->globalCtx->cameraPtrs[MAIN_CAM]; + Camera* mainCam = camera->globalCtx->cameraPtrs[CAM_ID_MAIN]; Player* player = GET_PLAYER(camera->globalCtx); if (camera->timer == 0) { - Gameplay_ChangeCameraStatus(camera->globalCtx, camera->parentCamIdx, CAM_STAT_ACTIVE); + Gameplay_ChangeCameraStatus(camera->globalCtx, camera->parentCamId, CAM_STAT_ACTIVE); - if ((camera->parentCamIdx == MAIN_CAM) && (camera->csId != 0)) { + if ((camera->parentCamId == CAM_ID_MAIN) && (camera->csId != 0)) { player->actor.freezeTimer = 0; player->stateFlags1 &= ~PLAYER_STATE1_29; @@ -7644,23 +7644,23 @@ void Camera_Finish(Camera* camera) { mainCam->unk_14C |= 8; } - if (CHILD_CAM(camera)->parentCamIdx == camera->thisIdx) { - CHILD_CAM(camera)->parentCamIdx = camera->parentCamIdx; + if (CHILD_CAM(camera)->parentCamId == camera->camId) { + CHILD_CAM(camera)->parentCamId = camera->parentCamId; } - if (PARENT_CAM(camera)->childCamIdx == camera->thisIdx) { - PARENT_CAM(camera)->childCamIdx = camera->childCamIdx; + if (PARENT_CAM(camera)->childCamId == camera->camId) { + PARENT_CAM(camera)->childCamId = camera->childCamId; } - if (PARENT_CAM(camera)->thisIdx == MAIN_CAM) { + if (PARENT_CAM(camera)->camId == CAM_ID_MAIN) { PARENT_CAM(camera)->animState = 0; } - camera->childCamIdx = camera->parentCamIdx = SUBCAM_FREE; + camera->childCamId = camera->parentCamId = CAM_ID_MAIN; camera->timer = -1; camera->globalCtx->envCtx.fillScreen = false; - Gameplay_ClearCamera(camera->globalCtx, camera->thisIdx); + Gameplay_ClearCamera(camera->globalCtx, camera->camId); } } @@ -7871,7 +7871,7 @@ s16 Camera_ChangeSettingFlags(Camera* camera, s16 setting, s16 flags) { } osSyncPrintf(VT_SGR("1") "%06u:" VT_RST " camera: change camera[%d] set %s\n", camera->globalCtx->state.frames, - camera->thisIdx, sCameraSettingNames[camera->setting]); + camera->camId, sCameraSettingNames[camera->setting]); return setting; } @@ -7901,7 +7901,7 @@ s32 Camera_ChangeDataIdx(Camera* camera, s32 camDataIdx) { //! @bug: This is likely checking the wrong value. The actual return of Camera_ChangeSettingFlags or // camDataIdx would make more sense. osSyncPrintf(VT_COL(RED, WHITE) "camera: error: illegal camera ID (%d) !! (%d|%d|%d)\n" VT_RST, camDataIdx, - camera->thisIdx, 0x32, newCameraSetting); + camera->camId, 0x32, newCameraSetting); } return 0x80000000 | camDataIdx; } @@ -8197,10 +8197,10 @@ s32 func_8005B198(void) { s16 func_8005B1A4(Camera* camera) { camera->unk_14C |= 0x8; - if ((camera->thisIdx == MAIN_CAM) && (camera->globalCtx->activeCamera != MAIN_CAM)) { + if ((camera->camId == CAM_ID_MAIN) && (camera->globalCtx->activeCamId != CAM_ID_MAIN)) { GET_ACTIVE_CAM(camera->globalCtx)->unk_14C |= 0x8; - return camera->globalCtx->activeCamera; + return camera->globalCtx->activeCamId; } - return camera->thisIdx; + return camera->camId; } diff --git a/src/code/z_demo.c b/src/code/z_demo.c index 3db79f423..c2c6e9d06 100644 --- a/src/code/z_demo.c +++ b/src/code/z_demo.c @@ -96,7 +96,7 @@ void* D_8011E304[] = { u16 D_8015FCC0; u16 D_8015FCC2; u16 D_8015FCC4; -s16 D_8015FCC6; +s16 sReturnToCamId; u8 D_8015FCC8; s16 sQuakeIndex; u16 D_8015FCCC; // only written to, never read @@ -1330,8 +1330,8 @@ void Cutscene_Command_TransitionFX(GlobalContext* globalCtx, CutsceneContext* cs } } -// Command 0x1 & 0x5: Camera Positions -s32 Cutscene_Command_CameraPositions(GlobalContext* globalCtx, CutsceneContext* csCtx, u8* cmd, u8 relativeToLink) { +// Command 0x1 & 0x5: Camera Eye Points +s32 Cutscene_Command_CameraEyePoints(GlobalContext* globalCtx, CutsceneContext* csCtx, u8* cmd, u8 relativeToLink) { s32 shouldContinue = 1; CsCmdBase* cmdBase = (CsCmdBase*)cmd; s32 size; @@ -1342,16 +1342,16 @@ s32 Cutscene_Command_CameraPositions(GlobalContext* globalCtx, CutsceneContext* if ((cmdBase->startFrame < csCtx->frames) && (csCtx->frames < cmdBase->endFrame) && ((csCtx->unk_18 < cmdBase->startFrame) || (csCtx->unk_18 >= 0xF000))) { csCtx->unk_1B = 1; - csCtx->cameraPosition = (CutsceneCameraPoint*)cmd; + csCtx->subCamEyePoints = (CutsceneCameraPoint*)cmd; if (csCtx->unk_1A != 0) { csCtx->unk_18 = cmdBase->startFrame; if (D_8015FCC8 != 0) { - Gameplay_CameraChangeSetting(globalCtx, csCtx->unk_14, CAM_SET_CS_0); - Gameplay_ChangeCameraStatus(globalCtx, D_8015FCC6, CAM_STAT_WAIT); - Gameplay_ChangeCameraStatus(globalCtx, csCtx->unk_14, CAM_STAT_ACTIVE); - Camera_ResetAnim(Gameplay_GetCamera(globalCtx, csCtx->unk_14)); - Camera_SetCSParams(Gameplay_GetCamera(globalCtx, csCtx->unk_14), csCtx->cameraFocus, - csCtx->cameraPosition, GET_PLAYER(globalCtx), relativeToLink); + Gameplay_CameraChangeSetting(globalCtx, csCtx->subCamId, CAM_SET_CS_0); + Gameplay_ChangeCameraStatus(globalCtx, sReturnToCamId, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, csCtx->subCamId, CAM_STAT_ACTIVE); + Camera_ResetAnim(Gameplay_GetCamera(globalCtx, csCtx->subCamId)); + Camera_SetCSParams(Gameplay_GetCamera(globalCtx, csCtx->subCamId), csCtx->subCamLookAtPoints, + csCtx->subCamEyePoints, GET_PLAYER(globalCtx), relativeToLink); } } } @@ -1367,8 +1367,8 @@ s32 Cutscene_Command_CameraPositions(GlobalContext* globalCtx, CutsceneContext* return size; } -// Command 0x2 & 0x6: Camera Focus Points -s32 Cutscene_Command_CameraFocus(GlobalContext* globalCtx, CutsceneContext* csCtx, u8* cmd, u8 relativeToLink) { +// Command 0x2 & 0x6: Camera At Points +s32 Cutscene_Command_CameraLookAtPoints(GlobalContext* globalCtx, CutsceneContext* csCtx, u8* cmd, u8 relativeToLink) { s32 shouldContinue = 1; CsCmdBase* cmdBase = (CsCmdBase*)cmd; s32 size; @@ -1379,16 +1379,16 @@ s32 Cutscene_Command_CameraFocus(GlobalContext* globalCtx, CutsceneContext* csCt if ((cmdBase->startFrame < csCtx->frames) && (csCtx->frames < cmdBase->endFrame) && ((D_8015FCC0 < cmdBase->startFrame) || (D_8015FCC0 >= 0xF000))) { csCtx->unk_1A = 1; - csCtx->cameraFocus = (CutsceneCameraPoint*)cmd; + csCtx->subCamLookAtPoints = (CutsceneCameraPoint*)cmd; if (csCtx->unk_1B != 0) { D_8015FCC0 = cmdBase->startFrame; if (D_8015FCC8 != 0) { - Gameplay_CameraChangeSetting(globalCtx, csCtx->unk_14, CAM_SET_CS_0); - Gameplay_ChangeCameraStatus(globalCtx, D_8015FCC6, CAM_STAT_WAIT); - Gameplay_ChangeCameraStatus(globalCtx, csCtx->unk_14, CAM_STAT_ACTIVE); - Camera_ResetAnim(Gameplay_GetCamera(globalCtx, csCtx->unk_14)); - Camera_SetCSParams(Gameplay_GetCamera(globalCtx, csCtx->unk_14), csCtx->cameraFocus, - csCtx->cameraPosition, GET_PLAYER(globalCtx), relativeToLink); + Gameplay_CameraChangeSetting(globalCtx, csCtx->subCamId, CAM_SET_CS_0); + Gameplay_ChangeCameraStatus(globalCtx, sReturnToCamId, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, csCtx->subCamId, CAM_STAT_ACTIVE); + Camera_ResetAnim(Gameplay_GetCamera(globalCtx, csCtx->subCamId)); + Camera_SetCSParams(Gameplay_GetCamera(globalCtx, csCtx->subCamId), csCtx->subCamLookAtPoints, + csCtx->subCamEyePoints, GET_PLAYER(globalCtx), relativeToLink); } } } @@ -1410,7 +1410,7 @@ s32 Cutscene_Command_07(GlobalContext* globalCtx, CutsceneContext* csCtx, u8* cm s32 size; Vec3f sp3C; Vec3f sp30; - Camera* sp2C; + Camera* subCam; f32 sp28; cmd += 8; @@ -1419,25 +1419,25 @@ s32 Cutscene_Command_07(GlobalContext* globalCtx, CutsceneContext* csCtx, u8* cm if ((cmdBase->startFrame < csCtx->frames) && (csCtx->frames < cmdBase->endFrame) && ((D_8015FCC2 < cmdBase->startFrame) || (D_8015FCC2 >= 0xF000))) { csCtx->unk_1B = 1; - csCtx->cameraPosition = (CutsceneCameraPoint*)cmd; + csCtx->subCamEyePoints = (CutsceneCameraPoint*)cmd; if (csCtx->unk_1A != 0) { D_8015FCC2 = cmdBase->startFrame; if (D_8015FCC8 != 0) { - sp2C = Gameplay_GetCamera(globalCtx, csCtx->unk_14); - sp2C->player = NULL; - Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT); - Gameplay_ChangeCameraStatus(globalCtx, csCtx->unk_14, CAM_STAT_ACTIVE); - Gameplay_CameraChangeSetting(globalCtx, csCtx->unk_14, CAM_SET_FREE0); - sp28 = csCtx->cameraFocus->cameraRoll * 1.40625f; - Camera_SetParam(sp2C, 64, &sp28); - sp3C.x = csCtx->cameraFocus->pos.x; - sp3C.y = csCtx->cameraFocus->pos.y; - sp3C.z = csCtx->cameraFocus->pos.z; - sp30.x = csCtx->cameraPosition->pos.x; - sp30.y = csCtx->cameraPosition->pos.y; - sp30.z = csCtx->cameraPosition->pos.z; - Gameplay_CameraSetAtEye(globalCtx, csCtx->unk_14, &sp3C, &sp30); - Gameplay_CameraSetFov(globalCtx, csCtx->unk_14, csCtx->cameraPosition->viewAngle); + subCam = Gameplay_GetCamera(globalCtx, csCtx->subCamId); + subCam->player = NULL; + Gameplay_ChangeCameraStatus(globalCtx, CAM_ID_MAIN, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, csCtx->subCamId, CAM_STAT_ACTIVE); + Gameplay_CameraChangeSetting(globalCtx, csCtx->subCamId, CAM_SET_FREE0); + sp28 = csCtx->subCamLookAtPoints->cameraRoll * 1.40625f; + Camera_SetParam(subCam, 64, &sp28); + sp3C.x = csCtx->subCamLookAtPoints->pos.x; + sp3C.y = csCtx->subCamLookAtPoints->pos.y; + sp3C.z = csCtx->subCamLookAtPoints->pos.z; + sp30.x = csCtx->subCamEyePoints->pos.x; + sp30.y = csCtx->subCamEyePoints->pos.y; + sp30.z = csCtx->subCamEyePoints->pos.z; + Gameplay_CameraSetAtEye(globalCtx, csCtx->subCamId, &sp3C, &sp30); + Gameplay_CameraSetFov(globalCtx, csCtx->subCamId, csCtx->subCamEyePoints->viewAngle); } } } @@ -1453,7 +1453,7 @@ s32 Cutscene_Command_08(GlobalContext* globalCtx, CutsceneContext* csCtx, u8* cm s32 size; Vec3f sp3C; Vec3f sp30; - Camera* sp2C; + Camera* subCam; f32 sp28; cmd += 8; @@ -1462,23 +1462,23 @@ s32 Cutscene_Command_08(GlobalContext* globalCtx, CutsceneContext* csCtx, u8* cm if ((cmdBase->startFrame < csCtx->frames) && (csCtx->frames < cmdBase->endFrame) && ((D_8015FCC4 < cmdBase->startFrame) || (D_8015FCC4 >= 0xF000))) { csCtx->unk_1A = 1; - csCtx->cameraFocus = (CutsceneCameraPoint*)cmd; + csCtx->subCamLookAtPoints = (CutsceneCameraPoint*)cmd; if (csCtx->unk_1B != 0) { D_8015FCC4 = cmdBase->startFrame; if (D_8015FCC8 != 0) { - sp2C = Gameplay_GetCamera(globalCtx, csCtx->unk_14); - sp2C->player = NULL; - Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT); - Gameplay_ChangeCameraStatus(globalCtx, csCtx->unk_14, CAM_STAT_ACTIVE); - Gameplay_CameraChangeSetting(globalCtx, csCtx->unk_14, CAM_SET_FREE0); - sp3C.x = csCtx->cameraFocus->pos.x; - sp3C.y = csCtx->cameraFocus->pos.y; - sp3C.z = csCtx->cameraFocus->pos.z; - sp30.x = csCtx->cameraPosition->pos.x; - sp30.y = csCtx->cameraPosition->pos.y; - sp30.z = csCtx->cameraPosition->pos.z; - Gameplay_CameraSetAtEye(globalCtx, csCtx->unk_14, &sp3C, &sp30); - Gameplay_CameraSetFov(globalCtx, csCtx->unk_14, csCtx->cameraPosition->viewAngle); + subCam = Gameplay_GetCamera(globalCtx, csCtx->subCamId); + subCam->player = NULL; + Gameplay_ChangeCameraStatus(globalCtx, CAM_ID_MAIN, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, csCtx->subCamId, CAM_STAT_ACTIVE); + Gameplay_CameraChangeSetting(globalCtx, csCtx->subCamId, CAM_SET_FREE0); + sp3C.x = csCtx->subCamLookAtPoints->pos.x; + sp3C.y = csCtx->subCamLookAtPoints->pos.y; + sp3C.z = csCtx->subCamLookAtPoints->pos.z; + sp30.x = csCtx->subCamEyePoints->pos.x; + sp30.y = csCtx->subCamEyePoints->pos.y; + sp30.z = csCtx->subCamEyePoints->pos.z; + Gameplay_CameraSetAtEye(globalCtx, csCtx->subCamId, &sp3C, &sp30); + Gameplay_CameraSetFov(globalCtx, csCtx->subCamId, csCtx->subCamEyePoints->viewAngle); } } } @@ -1859,16 +1859,16 @@ void Cutscene_ProcessCommands(GlobalContext* globalCtx, CutsceneContext* csCtx, } break; case CS_CMD_CAM_EYE: - cutscenePtr += Cutscene_Command_CameraPositions(globalCtx, csCtx, (void*)cutscenePtr, 0); + cutscenePtr += Cutscene_Command_CameraEyePoints(globalCtx, csCtx, (void*)cutscenePtr, 0); break; case CS_CMD_CAM_EYE_REL_TO_PLAYER: - cutscenePtr += Cutscene_Command_CameraPositions(globalCtx, csCtx, (void*)cutscenePtr, 1); + cutscenePtr += Cutscene_Command_CameraEyePoints(globalCtx, csCtx, (void*)cutscenePtr, 1); break; case CS_CMD_CAM_AT: - cutscenePtr += Cutscene_Command_CameraFocus(globalCtx, csCtx, (void*)cutscenePtr, 0); + cutscenePtr += Cutscene_Command_CameraLookAtPoints(globalCtx, csCtx, (void*)cutscenePtr, 0); break; case CS_CMD_CAM_AT_REL_TO_PLAYER: - cutscenePtr += Cutscene_Command_CameraFocus(globalCtx, csCtx, (void*)cutscenePtr, 1); + cutscenePtr += Cutscene_Command_CameraLookAtPoints(globalCtx, csCtx, (void*)cutscenePtr, 1); break; case CS_CMD_07: cutscenePtr += Cutscene_Command_07(globalCtx, csCtx, (void*)cutscenePtr, 0); @@ -1967,12 +1967,12 @@ void func_80068DC0(GlobalContext* globalCtx, CutsceneContext* csCtx) { case 0x028E: case 0x0292: case 0x0476: - Gameplay_CopyCamera(globalCtx, D_8015FCC6, csCtx->unk_14); + Gameplay_CopyCamera(globalCtx, sReturnToCamId, csCtx->subCamId); } - Gameplay_ChangeCameraStatus(globalCtx, D_8015FCC6, CAM_STAT_ACTIVE); - Gameplay_ClearCamera(globalCtx, csCtx->unk_14); - func_8005B1A4(globalCtx->cameraPtrs[D_8015FCC6]); + Gameplay_ChangeCameraStatus(globalCtx, sReturnToCamId, CAM_STAT_ACTIVE); + Gameplay_ClearCamera(globalCtx, csCtx->subCamId); + func_8005B1A4(globalCtx->cameraPtrs[sReturnToCamId]); } Audio_SetCutsceneFlag(0); @@ -2011,10 +2011,10 @@ void func_80068ECC(GlobalContext* globalCtx, CutsceneContext* csCtx) { D_8015FCC4 = 0xFFFF; csCtx->unk_1A = 0; csCtx->unk_1B = 0; - D_8015FCC6 = globalCtx->activeCamera; + sReturnToCamId = globalCtx->activeCamId; if (D_8015FCC8 != 0) { - csCtx->unk_14 = Gameplay_CreateSubCamera(globalCtx); + csCtx->subCamId = Gameplay_CreateSubCamera(globalCtx); } if (gSaveContext.cutsceneTrigger == 0) { diff --git a/src/code/z_horse.c b/src/code/z_horse.c index 072ef3187..8a3deac6e 100644 --- a/src/code/z_horse.c +++ b/src/code/z_horse.c @@ -223,7 +223,7 @@ void func_8006D684(GlobalContext* globalCtx, Player* player) { sp54.y = player->actor.world.pos.y + 100.0f; sp54.z = player->actor.world.pos.z; - Gameplay_CameraSetAtEye(globalCtx, globalCtx->activeCamera, &player->actor.world.pos, &sp54); + Gameplay_CameraSetAtEye(globalCtx, globalCtx->activeCamId, &player->actor.world.pos, &sp54); } else { Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_HORSE, D_8011F9B8[i].pos.x, D_8011F9B8[i].pos.y, D_8011F9B8[i].pos.z, 0, D_8011F9B8[i].angle, 0, diff --git a/src/code/z_message_PAL.c b/src/code/z_message_PAL.c index 38968e59a..18fd1d732 100644 --- a/src/code/z_message_PAL.c +++ b/src/code/z_message_PAL.c @@ -3275,13 +3275,13 @@ void Message_Update(GlobalContext* globalCtx) { } if (globalCtx->csCtx.state == 0) { osSyncPrintf(VT_FGCOL(GREEN)); - osSyncPrintf("day_time=%x active_camera=%d ", gSaveContext.cutsceneIndex, globalCtx->activeCamera); + osSyncPrintf("day_time=%x active_camera=%d ", gSaveContext.cutsceneIndex, globalCtx->activeCamId); if (msgCtx->textId != 0x2061 && msgCtx->textId != 0x2025 && msgCtx->textId != 0x208C && ((msgCtx->textId < 0x88D || msgCtx->textId >= 0x893) || msgCtx->choiceIndex != 0) && (msgCtx->textId != 0x3055 && gSaveContext.cutsceneIndex < 0xFFF0)) { osSyncPrintf("=== day_time=%x ", ((void)0, gSaveContext.cutsceneIndex)); - if (globalCtx->activeCamera == MAIN_CAM) { + if (globalCtx->activeCamId == CAM_ID_MAIN) { if (gSaveContext.unk_13EE == 0 || gSaveContext.unk_13EE == 1 || gSaveContext.unk_13EE == 2) { gSaveContext.unk_13EE = 0x32; } diff --git a/src/code/z_onepointdemo.c b/src/code/z_onepointdemo.c index ea2bec75a..a4d6edeb1 100644 --- a/src/code/z_onepointdemo.c +++ b/src/code/z_onepointdemo.c @@ -56,10 +56,10 @@ void OnePointCutscene_SetCsCamPoints(Camera* camera, s16 actionParameters, s16 i onePointCamData->initTimer = initTimer; } -s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Actor* actor, s16 timer) { - Camera* csCam = globalCtx->cameraPtrs[camIdx]; - Camera* childCam = globalCtx->cameraPtrs[csCam->childCamIdx]; - Camera* mainCam = globalCtx->cameraPtrs[MAIN_CAM]; +s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 subCamId, s16 csId, Actor* actor, s16 timer) { + Camera* subCam = globalCtx->cameraPtrs[subCamId]; + Camera* childCam = globalCtx->cameraPtrs[subCam->childCamId]; + Camera* mainCam = globalCtx->cameraPtrs[CAM_ID_MAIN]; Player* player = mainCam->player; VecSph spD0; s32 i; @@ -68,7 +68,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act PosRot spA0; PosRot sp8C; f32 tempRand; - OnePointCsInfo* csInfo = &csCam->paramData.uniq9.csInfo; + OnePointCsInfo* csInfo = &subCam->paramData.uniq9.csInfo; switch (csId) { case 1020: @@ -82,13 +82,13 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act D_801208EC[1].eyeTargetInit = mainCam->eye; D_801208EC[1].fovTargetInit = mainCam->fov; D_801208EC[1].timerInit = timer - 1; - csCam->timer = timer + 1; + subCam->timer = timer + 1; D_801208EC[1].lerpStepScale = 1.0f / (0.5f * timer); csInfo->keyFrames = D_801208EC; csInfo->keyFrameCnt = 3; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 1030: D_80120964[0].atTargetInit = globalCtx->view.at; @@ -101,7 +101,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80120964; csInfo->keyFrameCnt = 2; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 5000: D_801209B4[0].atTargetInit = D_801209B4[1].atTargetInit = globalCtx->view.at; @@ -115,17 +115,17 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_801209B4; csInfo->keyFrameCnt = 4; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 5010: - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_ATTENTION); - Gameplay_CameraSetAtEye(globalCtx, camIdx, &mainCam->at, &mainCam->eye); - csCam->roll = 0; + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_ATTENTION); + Gameplay_CameraSetAtEye(globalCtx, subCamId, &mainCam->at, &mainCam->eye); + subCam->roll = 0; break; case 9500: csInfo->keyFrames = D_80120A54; csInfo->keyFrameCnt = 3; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 2260: D_80120ACC[0].atTargetInit.x = D_80120ACC[2].atTargetInit.x = @@ -137,7 +137,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80120ACC; csInfo->keyFrameCnt = 5; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 2270: csInfo->keyFrames = D_80120B94; @@ -152,11 +152,11 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act } } - D_80120B94[camIdx - 1].eyeTargetInit.y = + D_80120B94[subCamId - 1].eyeTargetInit.y = ((mainCam->globalCtx->state.frames & 1) ? 3.0f : -3.0f) + Rand_ZeroOne(); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); - i = Quake_Add(csCam, 5); + i = Quake_Add(subCam, 5); Quake_SetSpeed(i, 400); Quake_SetQuakeValues(i, 4, 5, 40, 0x3C); Quake_SetCountdown(i, 1600); @@ -173,11 +173,11 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act D_80120D4C[i].eyeTargetInit.z = (Rand_ZeroOne() * 40.0f) + 80.0f; } } - D_80120D4C[camIdx - 1].eyeTargetInit.y = + D_80120D4C[subCamId - 1].eyeTargetInit.y = ((mainCam->globalCtx->state.frames & 1) ? 3.0f : -3.0f) + Rand_ZeroOne(); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); - i = Quake_Add(csCam, 5); + i = Quake_Add(subCam, 5); Quake_SetSpeed(i, 400); Quake_SetQuakeValues(i, 2, 3, 200, 0x32); Quake_SetCountdown(i, 9999); @@ -186,9 +186,9 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80120E64; csInfo->keyFrameCnt = 8; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); - i = Quake_Add(csCam, 5); + i = Quake_Add(subCam, 5); Quake_SetSpeed(i, 400); Quake_SetQuakeValues(i, 2, 2, 50, 0); Quake_SetCountdown(i, 280); @@ -202,15 +202,15 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80120FA4; csInfo->keyFrameCnt = 6; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 2340: csInfo->keyFrames = D_80121094; csInfo->keyFrameCnt = 3; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); - i = Quake_Add(csCam, 5); + i = Quake_Add(subCam, 5); Quake_SetSpeed(i, 400); Quake_SetQuakeValues(i, 2, 2, 50, 0); Quake_SetCountdown(i, 60); @@ -219,7 +219,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_8012110C; csInfo->keyFrameCnt = 3; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 2200: { s16 sp82; @@ -255,8 +255,8 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_801211D4; csInfo->keyFrameCnt = 2; } - Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_UNK3); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + Gameplay_ChangeCameraStatus(globalCtx, CAM_ID_MAIN, CAM_STAT_UNK3); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); } break; case 2290: { Actor* rideActor = player->rideActor; @@ -269,7 +269,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80121224; csInfo->keyFrameCnt = 6; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); } break; case 5120: func_8002DF54(globalCtx, NULL, 8); @@ -277,7 +277,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80121314; csInfo->keyFrameCnt = 1; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4510: D_8012133C[0].eyeTargetInit = actor->world.pos; @@ -287,7 +287,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_8012133C; csInfo->keyFrameCnt = 3; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4500: Actor_GetFocus(&spA0, actor); @@ -298,13 +298,13 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act spD0.pitch = 0x3E8; OnePointCutscene_AddVecSphToVec3f(&spB4, &spC0, &spD0); - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); - Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, subCamId, &spC0, &spB4); func_8002DF54(globalCtx, NULL, 8); - csCam->roll = 0; - csCam->fov = 50.0f; - if (csCam->childCamIdx != SUBCAM_FREE) { - OnePointCutscene_EndCutscene(globalCtx, csCam->childCamIdx); + subCam->roll = 0; + subCam->fov = 50.0f; + if (subCam->childCamId != CAM_ID_MAIN) { + OnePointCutscene_EndCutscene(globalCtx, subCam->childCamId); } break; case 2210: @@ -319,29 +319,29 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_801213B4; csInfo->keyFrameCnt = 5; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 1010: - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); - Gameplay_CameraSetAtEye(globalCtx, camIdx, &childCam->at, &childCam->eye); - Gameplay_CameraSetFov(globalCtx, camIdx, childCam->fov); - Gameplay_SetCameraRoll(globalCtx, camIdx, childCam->roll); + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, subCamId, &childCam->at, &childCam->eye); + Gameplay_CameraSetFov(globalCtx, subCamId, childCam->fov); + Gameplay_SetCameraRoll(globalCtx, subCamId, childCam->roll); break; case 9601: - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_CS_3); - Gameplay_CameraChangeSetting(globalCtx, MAIN_CAM, mainCam->prevSetting); - OnePointCutscene_SetCsCamPoints(csCam, D_80120430 | 0x1000, D_8012042C, D_80120308, D_80120398); + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_CS_3); + Gameplay_CameraChangeSetting(globalCtx, CAM_ID_MAIN, mainCam->prevSetting); + OnePointCutscene_SetCsCamPoints(subCam, D_80120430 | 0x1000, D_8012042C, D_80120308, D_80120398); break; case 9602: - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_CS_3); - Gameplay_CameraChangeSetting(globalCtx, MAIN_CAM, mainCam->prevSetting); - OnePointCutscene_SetCsCamPoints(csCam, D_80120430 | 0x1000, D_8012042C, D_80120308, D_80120434); + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_CS_3); + Gameplay_CameraChangeSetting(globalCtx, CAM_ID_MAIN, mainCam->prevSetting); + OnePointCutscene_SetCsCamPoints(subCam, D_80120430 | 0x1000, D_8012042C, D_80120308, D_80120434); break; case 4175: csInfo->keyFrames = D_8012147C; csInfo->keyFrameCnt = 4; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4180: spC0.x = -1881.0f; @@ -350,10 +350,10 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act spB4.x = -1979.0f; spB4.y = 703.0f; spB4.z = -269.0f; - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); - Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); - csCam->roll = 6; - csCam->fov = 75.0f; + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, subCamId, &spC0, &spB4); + subCam->roll = 6; + subCam->fov = 75.0f; func_8002DF54(globalCtx, NULL, 8); break; case 3040: @@ -363,7 +363,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_8012151C; csInfo->keyFrameCnt = 2; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 3020: D_8012156C[1].timerInit = timer - 1; @@ -380,7 +380,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_8012156C; csInfo->keyFrameCnt = 2; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); func_8002DF54(globalCtx, NULL, 8); break; case 3010: @@ -389,15 +389,15 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_801215BC; csInfo->keyFrameCnt = 1; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 3070: csInfo->keyFrames = D_801215E4; csInfo->keyFrameCnt = 10; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); - i = Quake_Add(csCam, 3); + i = Quake_Add(subCam, 3); Quake_SetSpeed(i, 22000); Quake_SetQuakeValues(i, 2, 0, 200, 0); Quake_SetCountdown(i, 10); @@ -406,7 +406,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80121774; csInfo->keyFrameCnt = 4; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 3090: func_8002DF54(globalCtx, NULL, 8); @@ -414,17 +414,17 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80121814; csInfo->keyFrameCnt = 4; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 3100: VEC_SET(spB4, 0.0f, -280.0f, -1400.0f); Actor_GetFocus(&spA0, actor); spC0 = spA0.pos; - func_800C0808(globalCtx, camIdx, player, CAM_SET_PIVOT_VERTICAL); - Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); - csCam->roll = 0; - csCam->fov = 70.0f; + func_800C0808(globalCtx, subCamId, player, CAM_SET_PIVOT_VERTICAL); + Gameplay_CameraSetAtEye(globalCtx, subCamId, &spC0, &spB4); + subCam->roll = 0; + subCam->fov = 70.0f; func_8002DF54(globalCtx, NULL, 8); break; case 3380: @@ -433,9 +433,9 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrameCnt = 2; func_8002DF54(globalCtx, NULL, 8); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); - i = Quake_Add(csCam, 1); + i = Quake_Add(subCam, 1); Quake_SetSpeed(i, 24000); Quake_SetQuakeValues(i, 2, 0, 0, 0); Quake_SetCountdown(i, 160); @@ -445,12 +445,12 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrameCnt = 2; func_8002DF54(globalCtx, NULL, 8); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 3050: - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_CS_3); + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_CS_3); func_8002DF54(globalCtx, &player->actor, 5); - OnePointCutscene_SetCsCamPoints(csCam, D_80120304 | 0x2000, D_80120300, D_8012013C, D_8012021C); + OnePointCutscene_SetCsCamPoints(subCam, D_80120304 | 0x2000, D_80120300, D_8012013C, D_8012021C); func_80078884(NA_SE_SY_CORRECT_CHIME); OnePointCutscene_Vec3sToVec3f(&mainCam->at, &D_8012013C[D_801202FC - 2].pos); OnePointCutscene_Vec3sToVec3f(&mainCam->eye, &D_8012021C[D_801202FC - 2].pos); @@ -474,20 +474,20 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act break; case 3120: csInfo->keyFrames = D_80121954[-(timer + 101)]; - csCam->timer = 100; - csCam->unk_14C |= 2; + subCam->timer = 100; + subCam->unk_14C |= 2; csInfo->keyFrameCnt = 2; func_8002DF54(globalCtx, NULL, 8); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 3130: csInfo->keyFrames = D_80121A44; csInfo->keyFrameCnt = 12; func_8002DF54(globalCtx, NULL, 8); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); - csCam->unk_14C |= 2; + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); + subCam->unk_14C |= 2; break; case 3140: D_80121C24[0].atTargetInit = globalCtx->view.at; @@ -497,7 +497,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80121C24; csInfo->keyFrameCnt = 7; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 3150: spC0.x = 1890.0f; @@ -506,10 +506,10 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act spB4.x = 1729.0f; spB4.y = 995.0f; spB4.z = -1405.0f; - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); - Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); - csCam->roll = 0x50; - csCam->fov = 55.0f; + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, subCamId, &spC0, &spB4); + subCam->roll = 0x50; + subCam->fov = 55.0f; func_8002DF38(globalCtx, &player->actor, 8); break; case 3170: @@ -521,11 +521,11 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act Actor_GetWorld(&spA0, &player->actor); spD0.yaw = OnePointCutscene_Vec3fYaw(&spC0, &spA0.pos) - 0x7D0; OnePointCutscene_AddVecSphToVec3f(&spB4, &spC0, &spD0); - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); - Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); - Gameplay_CopyCamera(globalCtx, MAIN_CAM, camIdx); - csCam->roll = -1; - csCam->fov = 55.0f; + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, subCamId, &spC0, &spB4); + Gameplay_CopyCamera(globalCtx, CAM_ID_MAIN, subCamId); + subCam->roll = -1; + subCam->fov = 55.0f; func_8002DF38(globalCtx, actor, 1); break; case 3160: @@ -535,10 +535,10 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act spD0.yaw = spA0.rot.y; spD0.r = 150.0f; OnePointCutscene_AddVecSphToVec3f(&spB4, &spC0, &spD0); - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); - Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); - csCam->roll = 0; - csCam->fov = 55.0f; + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, subCamId, &spC0, &spB4); + subCam->roll = 0; + subCam->fov = 55.0f; func_8002DF38(globalCtx, &player->actor, 8); break; case 3180: @@ -549,14 +549,14 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act spD0.yaw = spA0.rot.y; spD0.pitch = -0xAF0; OnePointCutscene_AddVecSphToVec3f(&spB4, &spC0, &spD0); - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); - Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); - csCam->roll = 0; - csCam->fov = 60.0f; + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, subCamId, &spC0, &spB4); + subCam->roll = 0; + subCam->fov = 60.0f; func_8002DF38(globalCtx, actor, 1); break; case 3190: - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FOREST_DEFEAT_POE); + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_FOREST_DEFEAT_POE); Camera_ChangeMode(mainCam, CAM_MODE_NORMAL); func_8002DF38(globalCtx, actor, 0xC); break; @@ -567,10 +567,10 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act spB4.x = 80.0f; spB4.y = 445.0f; spB4.z = -1425.0f; - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); - Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); - csCam->roll = 0x1E; - csCam->fov = 75.0f; + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, subCamId, &spC0, &spB4); + subCam->roll = 0x1E; + subCam->fov = 75.0f; func_8002DF38(globalCtx, &player->actor, 8); Actor_GetWorldPosShapeRot(&spA0, actor); Actor_GetFocus(&sp8C, &player->actor); @@ -581,9 +581,9 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act spD0.pitch = 0x5DC; spD0.r = 120.0f; OnePointCutscene_AddVecSphToVec3f(&spB4, &spC0, &spD0); - Gameplay_CameraSetAtEye(globalCtx, MAIN_CAM, &spC0, &spB4); + Gameplay_CameraSetAtEye(globalCtx, CAM_ID_MAIN, &spC0, &spB4); - i = Quake_Add(csCam, 3); + i = Quake_Add(subCam, 3); Quake_SetSpeed(i, 22000); Quake_SetQuakeValues(i, 1, 0, 0, 0); Quake_SetCountdown(i, 90); @@ -596,25 +596,25 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act spD0.yaw = spA0.rot.y + 0x7FFF; spD0.r = 300.0f; OnePointCutscene_AddVecSphToVec3f(&spB4, &spC0, &spD0); - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); - Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); - csCam->roll = 0; - csCam->fov = 45.0f; + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, subCamId, &spC0, &spB4); + subCam->roll = 0; + subCam->fov = 45.0f; func_8002DF38(globalCtx, &player->actor, 8); break; case 3220: Actor_GetFocus(&spA0, actor); spC0 = spA0.pos; - func_800C0808(globalCtx, camIdx, player, CAM_SET_PIVOT_VERTICAL); + func_800C0808(globalCtx, subCamId, player, CAM_SET_PIVOT_VERTICAL); Actor_GetWorld(&spA0, &player->actor); OLib_Vec3fDiffToVecSphGeo(&spD0, &spC0, &spA0.pos); spD0.yaw += 0x3E8; spD0.r = 400.0f; OnePointCutscene_AddVecSphToVec3f(&spB4, &spC0, &spD0); spB4.y = spA0.pos.y + 60.0f; - Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); - csCam->roll = 0; - csCam->fov = 75.0f; + Gameplay_CameraSetAtEye(globalCtx, subCamId, &spC0, &spB4); + subCam->roll = 0; + subCam->fov = 75.0f; player->actor.shape.rot.y = player->actor.world.rot.y = player->currentYaw = spD0.yaw + 0x7FFF; func_8002DF54(globalCtx, NULL, 8); break; @@ -625,31 +625,31 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrameCnt = 3; func_8002DF54(globalCtx, NULL, 8); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 6001: - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_CS_3); + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_CS_3); func_8002DF54(globalCtx, NULL, 8); Actor_GetWorld(&spA0, actor); if (spA0.pos.z > -750.0f) { - OnePointCutscene_SetCsCamPoints(csCam, D_801208E8, D_801208E4, D_801206A0, D_80120820); + OnePointCutscene_SetCsCamPoints(subCam, D_801208E8, D_801208E4, D_801206A0, D_80120820); } else { - OnePointCutscene_SetCsCamPoints(csCam, D_801208E8, D_801208E4, D_801206A0, D_80120760); + OnePointCutscene_SetCsCamPoints(subCam, D_801208E8, D_801208E4, D_801206A0, D_80120760); } - i = Quake_Add(csCam, 1); + i = Quake_Add(subCam, 1); Quake_SetSpeed(i, 32000); Quake_SetQuakeValues(i, 0, 0, 20, 0); Quake_SetCountdown(i, D_801208E4 - 10); break; case 3400: - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_CS_3); + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_CS_3); func_8002DF38(globalCtx, &player->actor, 8); - OnePointCutscene_SetCsCamPoints(csCam, D_8012069C | 0x2000, D_80120698, D_801204D4, D_801205B4); + OnePointCutscene_SetCsCamPoints(subCam, D_8012069C | 0x2000, D_80120698, D_801204D4, D_801205B4); OnePointCutscene_Vec3sToVec3f(&mainCam->eye, &D_801205B4[D_80120694 - 2].pos); OnePointCutscene_Vec3sToVec3f(&mainCam->at, &D_801204D4[D_80120694 - 2].pos); - i = Quake_Add(csCam, 1); + i = Quake_Add(subCam, 1); Quake_SetSpeed(i, 0x4E20); Quake_SetQuakeValues(i, 1, 0, 50, 0); Quake_SetCountdown(i, D_80120698 - 20); @@ -661,14 +661,14 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrameCnt = 9; func_8002DF54(globalCtx, NULL, 8); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 3310: - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FIRE_STAIRCASE); + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_FIRE_STAIRCASE); func_8002DF54(globalCtx, NULL, 8); - Gameplay_CopyCamera(globalCtx, camIdx, MAIN_CAM); + Gameplay_CopyCamera(globalCtx, subCamId, CAM_ID_MAIN); - i = Quake_Add(csCam, 1); + i = Quake_Add(subCam, 1); Quake_SetSpeed(i, 32000); Quake_SetQuakeValues(i, 2, 0, 0, 0); Quake_SetCountdown(i, timer); @@ -683,9 +683,9 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80121F1C; csInfo->keyFrameCnt = 4; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); - i = Quake_Add(csCam, 3); + i = Quake_Add(subCam, 3); Quake_SetSpeed(i, 12000); Quake_SetQuakeValues(i, 0, 0, 1000, 0); Quake_SetCountdown(i, 5); @@ -699,9 +699,9 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrameCnt = 4; func_8002DF54(globalCtx, NULL, 8); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); - i = Quake_Add(csCam, 3); + i = Quake_Add(subCam, 3); Quake_SetSpeed(i, 12000); Quake_SetQuakeValues(i, 0, 0, 1000, 0); Quake_SetCountdown(i, 5); @@ -711,7 +711,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrameCnt = 3; func_8002DF38(globalCtx, &player->actor, 8); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 3350: D_801220D4[0].atTargetInit = globalCtx->view.at; @@ -730,23 +730,23 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_801220D4; csInfo->keyFrameCnt = 5; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 3330: csInfo->keyFrames = D_8012219C; csInfo->keyFrameCnt = 7; func_8002DF38(globalCtx, &player->actor, 8); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 3410: csInfo->keyFrames = D_801222B4; csInfo->keyFrameCnt = 5; func_8002DF54(globalCtx, NULL, 8); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); - i = Quake_Add(csCam, 1); + i = Quake_Add(subCam, 1); Quake_SetSpeed(i, 32000); Quake_SetQuakeValues(i, 4, 0, 0, 0); Quake_SetCountdown(i, 20); @@ -756,9 +756,9 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrameCnt = 2; func_8002DF38(globalCtx, &player->actor, 8); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); - i = Quake_Add(csCam, 1); + i = Quake_Add(subCam, 1); Quake_SetSpeed(i, 32000); Quake_SetQuakeValues(i, 2, 0, 0, 0); Quake_SetCountdown(i, 10); @@ -768,11 +768,11 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrameCnt = 6; func_8002DF54(globalCtx, NULL, 8); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); player->stateFlags1 |= PLAYER_STATE1_29; player->actor.freezeTimer = 90; - i = Quake_Add(csCam, 1); + i = Quake_Add(subCam, 1); Quake_SetSpeed(i, 32000); Quake_SetQuakeValues(i, 2, 0, 0, 0); Quake_SetCountdown(i, 10); @@ -782,9 +782,9 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrameCnt = 7; func_8002DF54(globalCtx, NULL, 8); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); - i = Quake_Add(csCam, 1); + i = Quake_Add(subCam, 1); Quake_SetSpeed(i, 32000); Quake_SetQuakeValues(i, 1, 0, 10, 0); Quake_SetCountdown(i, 20); @@ -794,7 +794,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrameCnt = 5; player->actor.shape.rot.y = player->actor.world.rot.y = player->currentYaw = 0x3FFC; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); func_8002DF54(globalCtx, NULL, 8); break; case 4110: @@ -802,7 +802,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrameCnt = 3; func_8002DF38(globalCtx, &player->actor, 8); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4120: func_8002DF54(globalCtx, NULL, 8); @@ -810,13 +810,13 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80122714; csInfo->keyFrameCnt = 4; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4140: csInfo->keyFrames = D_801227B4; csInfo->keyFrameCnt = 6; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); Camera_ChangeMode(mainCam, CAM_MODE_NORMAL); break; case 4150: @@ -825,7 +825,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act func_8002DF54(globalCtx, NULL, 8); Camera_ChangeMode(mainCam, CAM_MODE_NORMAL); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4160: csInfo->keyFrames = D_8012296C; @@ -833,7 +833,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act func_8002DF54(globalCtx, NULL, 8); Camera_ChangeMode(mainCam, CAM_MODE_NORMAL); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4170: csInfo->keyFrames = D_80122A0C; @@ -841,7 +841,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act func_8002DF54(globalCtx, NULL, 8); Camera_ChangeMode(mainCam, CAM_MODE_NORMAL); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4190: csInfo->keyFrames = D_80122A5C; @@ -849,7 +849,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act func_8002DF38(globalCtx, &player->actor, 8); Camera_ChangeMode(mainCam, CAM_MODE_NORMAL); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4200: csInfo->keyFrames = D_80122B9C; @@ -857,7 +857,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act func_8002DF38(globalCtx, &player->actor, 8); Camera_ChangeMode(mainCam, CAM_MODE_NORMAL); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4210: player->actor.freezeTimer = timer; @@ -865,9 +865,9 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80122C14; csInfo->keyFrameCnt = 1; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); - i = Quake_Add(csCam, 3); + i = Quake_Add(subCam, 3); Quake_SetSpeed(i, 12000); Quake_SetQuakeValues(i, 0, 1, 100, 0); Quake_SetCountdown(i, timer - 80); @@ -876,10 +876,10 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = (player->actor.world.pos.z < -15.0f) ? D_80122C3C : D_80122C64; csInfo->keyFrameCnt = 1; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); func_8002DF38(globalCtx, &player->actor, 1); - i = Quake_Add(csCam, 3); + i = Quake_Add(subCam, 3); Quake_SetSpeed(i, 12000); Quake_SetQuakeValues(i, 0, 1, 10, 0); Quake_SetCountdown(i, timer - 10); @@ -889,7 +889,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrameCnt = 1; func_8002DF54(globalCtx, NULL, 8); - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 3260: func_8002DF54(globalCtx, NULL, 8); @@ -898,7 +898,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80122CB4; csInfo->keyFrameCnt = 2; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 3261: func_8002DF54(globalCtx, NULL, 8); @@ -907,19 +907,19 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80122D04; csInfo->keyFrameCnt = 2; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 8010: csInfo->keyFrames = D_80122D54; csInfo->keyFrameCnt = 3; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 8002: csInfo->keyFrames = D_80122DCC; csInfo->keyFrameCnt = 3; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 8700: Actor_GetFocus(&spA0, actor); @@ -930,7 +930,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80122E44[timer & 1]; csInfo->keyFrameCnt = 7; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 1100: { s32 tempDiff = globalCtx->state.frames - sPrevFrameCs1100; @@ -948,18 +948,18 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_8012313C; csInfo->keyFrameCnt = 3; } - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); sPrevFrameCs1100 = globalCtx->state.frames; } break; case 9806: - csCam->timer = -99; + subCam->timer = -99; if (func_800C0CB8(globalCtx)) { - func_800C0808(globalCtx, camIdx, player, CAM_SET_TURN_AROUND); - csCam->data2 = 0xC; + func_800C0808(globalCtx, subCamId, player, CAM_SET_TURN_AROUND); + subCam->data2 = 0xC; } else { - Gameplay_CopyCamera(globalCtx, camIdx, MAIN_CAM); - Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); + Gameplay_CopyCamera(globalCtx, subCamId, CAM_ID_MAIN); + Gameplay_CameraChangeSetting(globalCtx, subCamId, CAM_SET_FREE2); } break; case 9908: @@ -982,7 +982,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_801231B4; csInfo->keyFrameCnt = 4; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); } else { D_80123254[1].timerInit = timer - 1; D_80123254[0].fovTargetInit = mainCam->fov; @@ -992,7 +992,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80123254; csInfo->keyFrameCnt = 2; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); } break; case 1000: @@ -1003,58 +1003,58 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_801232A4; csInfo->keyFrameCnt = 1; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 8603: csInfo->keyFrames = D_801232CC; csInfo->keyFrameCnt = 5; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 8604: csInfo->keyFrames = D_80123394; csInfo->keyFrameCnt = 5; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4000: csInfo->keyFrames = D_8012345C; csInfo->keyFrameCnt = 4; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4010: csInfo->keyFrames = D_801234FC; csInfo->keyFrameCnt = 5; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4011: csInfo->keyFrames = D_801235C4; csInfo->keyFrameCnt = 5; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4020: csInfo->keyFrames = D_8012368C; csInfo->keyFrameCnt = 4; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4021: csInfo->keyFrames = D_8012372C; csInfo->keyFrameCnt = 4; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 4022: - csCam->timer = D_801237CC[0].timerInit + D_801237CC[3].timerInit + D_801237CC[1].timerInit + - D_801237CC[2].timerInit + D_801237CC[4].timerInit; + subCam->timer = D_801237CC[0].timerInit + D_801237CC[3].timerInit + D_801237CC[1].timerInit + + D_801237CC[2].timerInit + D_801237CC[4].timerInit; csInfo->keyFrames = D_801237CC; csInfo->keyFrameCnt = 5; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 9703: D_80123894[0].atTargetInit = globalCtx->view.at; @@ -1068,7 +1068,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_80123894; csInfo->keyFrameCnt = 3; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 9704: D_8012390C[0].atTargetInit = globalCtx->view.at; @@ -1078,7 +1078,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_8012390C; csInfo->keyFrameCnt = 2; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 9705: D_8012395C[0].atTargetInit = globalCtx->view.at; @@ -1088,7 +1088,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_8012395C; csInfo->keyFrameCnt = 3; - func_800C0808(globalCtx, camIdx, player, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, player, CAM_SET_CS_C); break; case 5110: D_801239D4[1].timerInit = 10; @@ -1096,7 +1096,7 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act csInfo->keyFrames = D_801239D4; csInfo->keyFrameCnt = 3; - func_800C0808(globalCtx, camIdx, (Player*)actor, CAM_SET_CS_C); + func_800C0808(globalCtx, subCamId, (Player*)actor, CAM_SET_CS_C); break; default: osSyncPrintf(VT_COL(RED, WHITE) "onepointdemo camera: demo number not found !! (%d)\n" VT_RST, csId); @@ -1105,143 +1105,143 @@ s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Act return 0; } -s16 OnePointCutscene_SetAsChild(GlobalContext* globalCtx, s16 newCamIdx, s16 parentCamIdx) { - s16 prevCamIdx = globalCtx->cameraPtrs[parentCamIdx]->childCamIdx; +s16 OnePointCutscene_SetAsChild(GlobalContext* globalCtx, s16 newCamId, s16 parentCamId) { + s16 prevCamId = globalCtx->cameraPtrs[parentCamId]->childCamId; - globalCtx->cameraPtrs[newCamIdx]->parentCamIdx = parentCamIdx; - globalCtx->cameraPtrs[parentCamIdx]->childCamIdx = newCamIdx; + globalCtx->cameraPtrs[newCamId]->parentCamId = parentCamId; + globalCtx->cameraPtrs[parentCamId]->childCamId = newCamId; - return prevCamIdx; + return prevCamId; } /** * Removes a cutscene camera from the list. Returns the parent cam if the removed camera is active, otherwise returns - * SUBCAM_NONE + * CAM_ID_NONE */ -s32 OnePointCutscene_RemoveCamera(GlobalContext* globalCtx, s16 camIdx) { - Camera* camera = globalCtx->cameraPtrs[camIdx]; - s32 nextCamIdx; +s32 OnePointCutscene_RemoveCamera(GlobalContext* globalCtx, s16 subCamId) { + Camera* subCam = globalCtx->cameraPtrs[subCamId]; + s32 nextCamId; - if (camera->thisIdx == CHILD_CAM(camera)->parentCamIdx) { - CHILD_CAM(camera)->parentCamIdx = camera->parentCamIdx; + if (subCam->camId == CHILD_CAM(subCam)->parentCamId) { + CHILD_CAM(subCam)->parentCamId = subCam->parentCamId; } - if (camera->thisIdx == PARENT_CAM(camera)->childCamIdx) { - PARENT_CAM(camera)->childCamIdx = camera->childCamIdx; + if (subCam->camId == PARENT_CAM(subCam)->childCamId) { + PARENT_CAM(subCam)->childCamId = subCam->childCamId; } - nextCamIdx = (globalCtx->activeCamera == camIdx) ? camera->parentCamIdx : SUBCAM_NONE; - camera->parentCamIdx = MAIN_CAM; - camera->childCamIdx = camera->parentCamIdx; - camera->timer = -1; - Gameplay_ClearCamera(camera->globalCtx, camera->thisIdx); - return nextCamIdx; + nextCamId = (globalCtx->activeCamId == subCamId) ? subCam->parentCamId : CAM_ID_NONE; + subCam->parentCamId = CAM_ID_MAIN; + subCam->childCamId = subCam->parentCamId; + subCam->timer = -1; + Gameplay_ClearCamera(subCam->globalCtx, subCam->camId); + return nextCamId; } -#define vChildCamIdx temp2 -#define vCsStatus temp1 -#define vCurCamIdx temp2 -#define vNextCamIdx temp1 +#define vChildCamId temp2 +#define vSubCamStatus temp1 +#define vCurCamId temp2 +#define vNextCamId temp1 /** * Creates a cutscene subcamera with the specified ID, duration, and targeted actor. The camera is placed into the * cutscene queue in front of the specified camera, then all lower priority demos in front of it are removed from the * queue. */ -s16 OnePointCutscene_Init(GlobalContext* globalCtx, s16 csId, s16 timer, Actor* actor, s16 parentCamIdx) { +s16 OnePointCutscene_Init(GlobalContext* globalCtx, s16 csId, s16 timer, Actor* actor, s16 parentCamId) { s16 temp1; s16 temp2; - s16 csCamIdx; - Camera* csCam; + s16 subCamId; + Camera* subCam; - if (parentCamIdx == SUBCAM_ACTIVE) { - parentCamIdx = globalCtx->activeCamera; + if (parentCamId == CAM_ID_NONE) { + parentCamId = globalCtx->activeCamId; } - csCamIdx = Gameplay_CreateSubCamera(globalCtx); - if (csCamIdx == SUBCAM_NONE) { + subCamId = Gameplay_CreateSubCamera(globalCtx); + if (subCamId == CAM_ID_NONE) { osSyncPrintf(VT_COL(RED, WHITE) "onepoint demo: error: too many cameras ... give up! type=%d\n" VT_RST, csId); - return SUBCAM_NONE; + return CAM_ID_NONE; } // Inserts the cutscene camera into the cutscene queue in front of parentCam - vChildCamIdx = globalCtx->cameraPtrs[parentCamIdx]->childCamIdx; - vCsStatus = CAM_STAT_ACTIVE; - if (vChildCamIdx >= SUBCAM_FIRST) { - OnePointCutscene_SetAsChild(globalCtx, vChildCamIdx, csCamIdx); - vCsStatus = CAM_STAT_WAIT; + vChildCamId = globalCtx->cameraPtrs[parentCamId]->childCamId; + vSubCamStatus = CAM_STAT_ACTIVE; + if (vChildCamId >= CAM_ID_SUB_FIRST) { + OnePointCutscene_SetAsChild(globalCtx, vChildCamId, subCamId); + vSubCamStatus = CAM_STAT_WAIT; } else { Interface_ChangeAlpha(2); } - OnePointCutscene_SetAsChild(globalCtx, csCamIdx, parentCamIdx); + OnePointCutscene_SetAsChild(globalCtx, subCamId, parentCamId); - csCam = globalCtx->cameraPtrs[csCamIdx]; + subCam = globalCtx->cameraPtrs[subCamId]; - csCam->timer = timer; - csCam->target = actor; + subCam->timer = timer; + subCam->target = actor; - csCam->at = globalCtx->view.at; - csCam->eye = globalCtx->view.eye; - csCam->fov = globalCtx->view.fovy; + subCam->at = globalCtx->view.at; + subCam->eye = globalCtx->view.eye; + subCam->fov = globalCtx->view.fovy; - csCam->csId = csId; + subCam->csId = csId; - if (parentCamIdx == MAIN_CAM) { - Gameplay_ChangeCameraStatus(globalCtx, parentCamIdx, CAM_STAT_UNK3); + if (parentCamId == CAM_ID_MAIN) { + Gameplay_ChangeCameraStatus(globalCtx, parentCamId, CAM_STAT_UNK3); } else { - Gameplay_ChangeCameraStatus(globalCtx, parentCamIdx, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, parentCamId, CAM_STAT_WAIT); } - OnePointCutscene_SetInfo(globalCtx, csCamIdx, csId, actor, timer); - Gameplay_ChangeCameraStatus(globalCtx, csCamIdx, vCsStatus); + OnePointCutscene_SetInfo(globalCtx, subCamId, csId, actor, timer); + Gameplay_ChangeCameraStatus(globalCtx, subCamId, vSubCamStatus); // Removes all lower priority cutscenes in front of this cutscene from the queue. - vCurCamIdx = csCamIdx; - vNextCamIdx = globalCtx->cameraPtrs[csCamIdx]->childCamIdx; + vCurCamId = subCamId; + vNextCamId = globalCtx->cameraPtrs[subCamId]->childCamId; - while (vNextCamIdx >= SUBCAM_FIRST) { - s16 nextCsId = globalCtx->cameraPtrs[vNextCamIdx]->csId; - s16 thisCsId = globalCtx->cameraPtrs[csCamIdx]->csId; + while (vNextCamId >= CAM_ID_SUB_FIRST) { + s16 nextCsId = globalCtx->cameraPtrs[vNextCamId]->csId; + s16 thisCsId = globalCtx->cameraPtrs[subCamId]->csId; if ((nextCsId / 100) < (thisCsId / 100)) { osSyncPrintf(VT_COL(YELLOW, BLACK) "onepointdemo camera[%d]: killed 'coz low priority (%d < %d)\n" VT_RST, - vNextCamIdx, nextCsId, thisCsId); - if (globalCtx->cameraPtrs[vNextCamIdx]->csId != 5010) { - if ((vNextCamIdx = OnePointCutscene_RemoveCamera(globalCtx, vNextCamIdx)) != SUBCAM_NONE) { - Gameplay_ChangeCameraStatus(globalCtx, vNextCamIdx, CAM_STAT_ACTIVE); + vNextCamId, nextCsId, thisCsId); + if (globalCtx->cameraPtrs[vNextCamId]->csId != 5010) { + if ((vNextCamId = OnePointCutscene_RemoveCamera(globalCtx, vNextCamId)) != CAM_ID_NONE) { + Gameplay_ChangeCameraStatus(globalCtx, vNextCamId, CAM_STAT_ACTIVE); } } else { - vCurCamIdx = vNextCamIdx; - OnePointCutscene_EndCutscene(globalCtx, vNextCamIdx); + vCurCamId = vNextCamId; + OnePointCutscene_EndCutscene(globalCtx, vNextCamId); } } else { - vCurCamIdx = vNextCamIdx; + vCurCamId = vNextCamId; } - vNextCamIdx = globalCtx->cameraPtrs[vCurCamIdx]->childCamIdx; + vNextCamId = globalCtx->cameraPtrs[vCurCamId]->childCamId; } - return csCamIdx; + return subCamId; } /** - * Ends the cutscene in camIdx by setting its timer to 0. For attention cutscenes, it is set to 5 instead. + * Ends the cutscene in subCamId by setting its timer to 0. For attention cutscenes, it is set to 5 instead. */ -s16 OnePointCutscene_EndCutscene(GlobalContext* globalCtx, s16 camIdx) { - if (camIdx == SUBCAM_ACTIVE) { - camIdx = globalCtx->activeCamera; +s16 OnePointCutscene_EndCutscene(GlobalContext* globalCtx, s16 subCamId) { + if (subCamId == CAM_ID_NONE) { + subCamId = globalCtx->activeCamId; } - if (globalCtx->cameraPtrs[camIdx] != NULL) { - osSyncPrintf("onepointdemo camera[%d]: delete timer=%d next=%d\n", camIdx, globalCtx->cameraPtrs[camIdx]->timer, - globalCtx->cameraPtrs[camIdx]->parentCamIdx); - if (globalCtx->cameraPtrs[camIdx]->csId == 5010) { - globalCtx->cameraPtrs[camIdx]->timer = 5; + if (globalCtx->cameraPtrs[subCamId] != NULL) { + osSyncPrintf("onepointdemo camera[%d]: delete timer=%d next=%d\n", subCamId, + globalCtx->cameraPtrs[subCamId]->timer, globalCtx->cameraPtrs[subCamId]->parentCamId); + if (globalCtx->cameraPtrs[subCamId]->csId == 5010) { + globalCtx->cameraPtrs[subCamId]->timer = 5; } else { - globalCtx->cameraPtrs[camIdx]->timer = 0; + globalCtx->cameraPtrs[subCamId]->timer = 0; } } - return camIdx; + return subCamId; } #define vTargetCat temp1 -#define vParentCamIdx temp1 +#define vParentCamId temp1 #define vLastHigherCat temp2 -#define vCsCamIdx temp2 +#define vSubCamId temp2 /** * Adds an attention cutscene to the cutscene queue. @@ -1254,11 +1254,11 @@ s32 OnePointCutscene_Attention(GlobalContext* globalCtx, Actor* actor) { if (sDisableAttention) { osSyncPrintf(VT_COL(YELLOW, BLACK) "actor attention demo camera: canceled by other camera\n" VT_RST); - return SUBCAM_NONE; + return CAM_ID_NONE; } sUnused = -1; - parentCam = globalCtx->cameraPtrs[MAIN_CAM]; + parentCam = globalCtx->cameraPtrs[CAM_ID_MAIN]; if (parentCam->mode == CAM_MODE_FOLLOWBOOMERANG) { osSyncPrintf(VT_COL(YELLOW, BLACK) "actor attention demo camera: change mode BOOKEEPON -> NORMAL\n" VT_RST); Camera_ChangeMode(parentCam, CAM_MODE_NORMAL); @@ -1268,8 +1268,8 @@ s32 OnePointCutscene_Attention(GlobalContext* globalCtx, Actor* actor) { // after at least one attention demo. vLastHigherCat = -1; - while (parentCam->childCamIdx != SUBCAM_FREE) { - parentCam = globalCtx->cameraPtrs[parentCam->childCamIdx]; + while (parentCam->childCamId != CAM_ID_MAIN) { + parentCam = globalCtx->cameraPtrs[parentCam->childCamId]; if (parentCam == NULL) { break; } else if (parentCam->setting != CAM_SET_CS_ATTENTION) { @@ -1288,7 +1288,7 @@ s32 OnePointCutscene_Attention(GlobalContext* globalCtx, Actor* actor) { } // Actorcat is only undefined if the actor is in a higher category than all other attention cutscenes. In this case, // it goes in the first position of the list. Otherwise, it goes in the index found in the loop. - vParentCamIdx = (vLastHigherCat == -1) ? MAIN_CAM : parentCam->thisIdx; + vParentCamId = (vLastHigherCat == -1) ? CAM_ID_MAIN : parentCam->camId; switch (actor->category) { case ACTORCAT_SWITCH: @@ -1319,18 +1319,18 @@ s32 OnePointCutscene_Attention(GlobalContext* globalCtx, Actor* actor) { // If the previous attention cutscene has an actor in the same category, skip this actor. if (actor->category == vLastHigherCat) { osSyncPrintf("→ " VT_FGCOL(MAGENTA) "×" VT_RST " (%d)\n", actor->id); - return SUBCAM_NONE; + return CAM_ID_NONE; } osSyncPrintf("→ " VT_FGCOL(BLUE) "○" VT_RST " (%d)\n", actor->id); - vCsCamIdx = OnePointCutscene_Init(globalCtx, 5010, timer, actor, vParentCamIdx); - if (vCsCamIdx == SUBCAM_NONE) { + vSubCamId = OnePointCutscene_Init(globalCtx, 5010, timer, actor, vParentCamId); + if (vSubCamId == CAM_ID_NONE) { osSyncPrintf(VT_COL(RED, WHITE) "actor attention demo: give up! \n" VT_RST, actor->id); - return SUBCAM_NONE; + return CAM_ID_NONE; } else { - s32* data = (s32*)&globalCtx->cameraPtrs[vCsCamIdx]->data1; + s32* data = (s32*)&globalCtx->cameraPtrs[vSubCamId]->data1; *data = NA_SE_SY_CORRECT_CHIME; - return vCsCamIdx; + return vSubCamId; } } @@ -1338,14 +1338,14 @@ s32 OnePointCutscene_Attention(GlobalContext* globalCtx, Actor* actor) { * Adds an attention cutscene to the cutscene queue with the specified sound effect */ s32 OnePointCutscene_AttentionSetSfx(GlobalContext* globalCtx, Actor* actor, s32 sfxId) { - s32 csCamIdx = OnePointCutscene_Attention(globalCtx, actor); + s32 subCamId = OnePointCutscene_Attention(globalCtx, actor); - if (csCamIdx != SUBCAM_NONE) { - s32* data = (s32*)&globalCtx->cameraPtrs[csCamIdx]->data1; + if (subCamId != CAM_ID_NONE) { + s32* data = (s32*)&globalCtx->cameraPtrs[subCamId]->data1; *data = sfxId; } - return csCamIdx; + return subCamId; } // unused @@ -1359,10 +1359,10 @@ void OnePointCutscene_DisableAttention(void) { } s32 OnePointCutscene_CheckForCategory(GlobalContext* globalCtx, s32 actorCategory) { - Camera* parentCam = globalCtx->cameraPtrs[MAIN_CAM]; + Camera* parentCam = globalCtx->cameraPtrs[CAM_ID_MAIN]; - while (parentCam->childCamIdx != SUBCAM_FREE) { - parentCam = globalCtx->cameraPtrs[parentCam->childCamIdx]; + while (parentCam->childCamId != CAM_ID_MAIN) { + parentCam = globalCtx->cameraPtrs[parentCam->childCamId]; if ((parentCam == NULL) || (parentCam->setting != CAM_SET_CS_ATTENTION)) { break; } else if (actorCategory == parentCam->target->category) { diff --git a/src/code/z_play.c b/src/code/z_play.c index 9d55cd40f..9f283fee7 100644 --- a/src/code/z_play.c +++ b/src/code/z_play.c @@ -230,9 +230,9 @@ void Gameplay_Init(GameState* thisx) { Camera_ChangeStatus(&globalCtx->subCameras[i], CAM_STAT_UNK100); } - globalCtx->cameraPtrs[MAIN_CAM] = &globalCtx->mainCamera; - globalCtx->cameraPtrs[MAIN_CAM]->uid = 0; - globalCtx->activeCamera = MAIN_CAM; + globalCtx->cameraPtrs[CAM_ID_MAIN] = &globalCtx->mainCamera; + globalCtx->cameraPtrs[CAM_ID_MAIN]->uid = 0; + globalCtx->activeCamId = CAM_ID_MAIN; func_8005AC48(&globalCtx->mainCamera, 0xFF); Sram_Init(globalCtx, &globalCtx->sramCtx); func_80112098(globalCtx); @@ -1047,14 +1047,14 @@ skip: s32 pad3[5]; s32 i; - globalCtx->nextCamera = globalCtx->activeCamera; + globalCtx->nextCamId = globalCtx->activeCamId; if (1 && HREG(63)) { LOG_NUM("1", 1, "../z_play.c", 3806); } for (i = 0; i < NUM_CAMS; i++) { - if ((i != globalCtx->nextCamera) && (globalCtx->cameraPtrs[i] != NULL)) { + if ((i != globalCtx->nextCamId) && (globalCtx->cameraPtrs[i] != NULL)) { if (1 && HREG(63)) { LOG_NUM("1", 1, "../z_play.c", 3809); } @@ -1063,7 +1063,7 @@ skip: } } - Camera_Update(globalCtx->cameraPtrs[globalCtx->nextCamera]); + Camera_Update(globalCtx->cameraPtrs[globalCtx->nextCamId]); if (1 && HREG(63)) { LOG_NUM("1", 1, "../z_play.c", 3814); @@ -1547,7 +1547,7 @@ void func_800C016C(GlobalContext* globalCtx, Vec3f* src, Vec3f* dest) { s16 Gameplay_CreateSubCamera(GlobalContext* globalCtx) { s16 i; - for (i = SUBCAM_FIRST; i < NUM_CAMS; i++) { + for (i = CAM_ID_SUB_FIRST; i < NUM_CAMS; i++) { if (globalCtx->cameraPtrs[i] == NULL) { break; } @@ -1555,38 +1555,38 @@ s16 Gameplay_CreateSubCamera(GlobalContext* globalCtx) { if (i == NUM_CAMS) { osSyncPrintf(VT_COL(RED, WHITE) "camera control: error: fulled sub camera system area\n" VT_RST); - return SUBCAM_NONE; + return CAM_ID_NONE; } osSyncPrintf("camera control: " VT_BGCOL(CYAN) " " VT_COL(WHITE, BLUE) " create new sub camera [%d] " VT_BGCOL( CYAN) " " VT_RST "\n", i); - globalCtx->cameraPtrs[i] = &globalCtx->subCameras[i - SUBCAM_FIRST]; + globalCtx->cameraPtrs[i] = &globalCtx->subCameras[i - CAM_ID_SUB_FIRST]; Camera_Init(globalCtx->cameraPtrs[i], &globalCtx->view, &globalCtx->colCtx, globalCtx); - globalCtx->cameraPtrs[i]->thisIdx = i; + globalCtx->cameraPtrs[i]->camId = i; return i; } s16 Gameplay_GetActiveCamId(GlobalContext* globalCtx) { - return globalCtx->activeCamera; + return globalCtx->activeCamId; } s16 Gameplay_ChangeCameraStatus(GlobalContext* globalCtx, s16 camId, s16 status) { - s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; + s16 camIdx = (camId == CAM_ID_NONE) ? globalCtx->activeCamId : camId; if (status == CAM_STAT_ACTIVE) { - globalCtx->activeCamera = camIdx; + globalCtx->activeCamId = camIdx; } return Camera_ChangeStatus(globalCtx->cameraPtrs[camIdx], status); } void Gameplay_ClearCamera(GlobalContext* globalCtx, s16 camId) { - s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; + s16 camIdx = (camId == CAM_ID_NONE) ? globalCtx->activeCamId : camId; - if (camIdx == MAIN_CAM) { + if (camIdx == CAM_ID_MAIN) { osSyncPrintf(VT_COL(RED, WHITE) "camera control: error: never clear camera !!\n" VT_RST); } @@ -1602,26 +1602,26 @@ void Gameplay_ClearCamera(GlobalContext* globalCtx, s16 camId) { } void Gameplay_ClearAllSubCameras(GlobalContext* globalCtx) { - s16 i; + s16 subCamId; - for (i = SUBCAM_FIRST; i < NUM_CAMS; i++) { - if (globalCtx->cameraPtrs[i] != NULL) { - Gameplay_ClearCamera(globalCtx, i); + for (subCamId = CAM_ID_SUB_FIRST; subCamId < NUM_CAMS; subCamId++) { + if (globalCtx->cameraPtrs[subCamId] != NULL) { + Gameplay_ClearCamera(globalCtx, subCamId); } } - globalCtx->activeCamera = MAIN_CAM; + globalCtx->activeCamId = CAM_ID_MAIN; } Camera* Gameplay_GetCamera(GlobalContext* globalCtx, s16 camId) { - s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; + s16 camIdx = (camId == CAM_ID_NONE) ? globalCtx->activeCamId : camId; return globalCtx->cameraPtrs[camIdx]; } s32 Gameplay_CameraSetAtEye(GlobalContext* globalCtx, s16 camId, Vec3f* at, Vec3f* eye) { s32 ret = 0; - s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; + s16 camIdx = (camId == CAM_ID_NONE) ? globalCtx->activeCamId : camId; Camera* camera = globalCtx->cameraPtrs[camIdx]; Player* player; @@ -1647,7 +1647,7 @@ s32 Gameplay_CameraSetAtEye(GlobalContext* globalCtx, s16 camId, Vec3f* at, Vec3 s32 Gameplay_CameraSetAtEyeUp(GlobalContext* globalCtx, s16 camId, Vec3f* at, Vec3f* eye, Vec3f* up) { s32 ret = 0; - s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; + s16 camIdx = (camId == CAM_ID_NONE) ? globalCtx->activeCamId : camId; Camera* camera = globalCtx->cameraPtrs[camIdx]; Player* player; @@ -1681,7 +1681,7 @@ s32 Gameplay_CameraSetFov(GlobalContext* globalCtx, s16 camId, f32 fov) { } s32 Gameplay_SetCameraRoll(GlobalContext* globalCtx, s16 camId, s16 roll) { - s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; + s16 camIdx = (camId == CAM_ID_NONE) ? globalCtx->activeCamId : camId; Camera* camera = globalCtx->cameraPtrs[camIdx]; camera->roll = roll; @@ -1689,16 +1689,16 @@ s32 Gameplay_SetCameraRoll(GlobalContext* globalCtx, s16 camId, s16 roll) { return 1; } -void Gameplay_CopyCamera(GlobalContext* globalCtx, s16 camId1, s16 camId2) { - s16 camIdx2 = (camId2 == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId2; - s16 camIdx1 = (camId1 == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId1; +void Gameplay_CopyCamera(GlobalContext* globalCtx, s16 destCamId, s16 srcCamId) { + s16 srcCamId2 = (srcCamId == CAM_ID_NONE) ? globalCtx->activeCamId : srcCamId; + s16 destCamId1 = (destCamId == CAM_ID_NONE) ? globalCtx->activeCamId : destCamId; - Camera_Copy(globalCtx->cameraPtrs[camIdx1], globalCtx->cameraPtrs[camIdx2]); + Camera_Copy(globalCtx->cameraPtrs[destCamId1], globalCtx->cameraPtrs[srcCamId2]); } s32 func_800C0808(GlobalContext* globalCtx, s16 camId, Player* player, s16 setting) { Camera* camera; - s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; + s16 camIdx = (camId == CAM_ID_NONE) ? globalCtx->activeCamId : camId; camera = globalCtx->cameraPtrs[camIdx]; Camera_InitPlayerSettings(camera, player); @@ -1710,12 +1710,12 @@ s32 Gameplay_CameraChangeSetting(GlobalContext* globalCtx, s16 camId, s16 settin } void func_800C08AC(GlobalContext* globalCtx, s16 camId, s16 arg2) { - s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; + s16 camIdx = (camId == CAM_ID_NONE) ? globalCtx->activeCamId : camId; s16 i; Gameplay_ClearCamera(globalCtx, camIdx); - for (i = SUBCAM_FIRST; i < NUM_CAMS; i++) { + for (i = CAM_ID_SUB_FIRST; i < NUM_CAMS; i++) { if (globalCtx->cameraPtrs[i] != NULL) { osSyncPrintf( VT_COL(RED, WHITE) "camera control: error: return to main, other camera left. %d cleared!!\n" VT_RST, @@ -1725,10 +1725,10 @@ void func_800C08AC(GlobalContext* globalCtx, s16 camId, s16 arg2) { } if (arg2 <= 0) { - Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_ACTIVE); - globalCtx->cameraPtrs[MAIN_CAM]->childCamIdx = globalCtx->cameraPtrs[MAIN_CAM]->parentCamIdx = SUBCAM_FREE; + Gameplay_ChangeCameraStatus(globalCtx, CAM_ID_MAIN, CAM_STAT_ACTIVE); + globalCtx->cameraPtrs[CAM_ID_MAIN]->childCamId = globalCtx->cameraPtrs[CAM_ID_MAIN]->parentCamId = CAM_ID_MAIN; } else { - OnePointCutscene_Init(globalCtx, 1020, arg2, NULL, MAIN_CAM); + OnePointCutscene_Init(globalCtx, 1020, arg2, NULL, CAM_ID_MAIN); } } diff --git a/src/code/z_player_lib.c b/src/code/z_player_lib.c index 4ac8516f8..9c9a6a075 100644 --- a/src/code/z_player_lib.c +++ b/src/code/z_player_lib.c @@ -616,8 +616,8 @@ void func_8008EEAC(GlobalContext* globalCtx, Actor* actor) { this->unk_664 = actor; this->unk_684 = actor; this->stateFlags1 |= PLAYER_STATE1_16; - Camera_SetParam(Gameplay_GetCamera(globalCtx, 0), 8, actor); - Camera_ChangeMode(Gameplay_GetCamera(globalCtx, 0), 2); + Camera_SetParam(Gameplay_GetCamera(globalCtx, CAM_ID_MAIN), 8, actor); + Camera_ChangeMode(Gameplay_GetCamera(globalCtx, CAM_ID_MAIN), CAM_MODE_FOLLOWTARGET); } s32 func_8008EF30(GlobalContext* globalCtx) { diff --git a/src/code/z_quake.c b/src/code/z_quake.c index 257d6627b..ac9290e09 100644 --- a/src/code/z_quake.c +++ b/src/code/z_quake.c @@ -148,13 +148,13 @@ s16 Quake_GetFreeIndex(void) { return ret; } -QuakeRequest* Quake_AddImpl(Camera* cam, u32 callbackIdx) { +QuakeRequest* Quake_AddImpl(Camera* camera, u32 callbackIdx) { s16 idx = Quake_GetFreeIndex(); QuakeRequest* req = &sQuakeRequest[idx]; __osMemset(req, 0, sizeof(QuakeRequest)); - req->cam = cam; - req->camPtrIdx = cam->thisIdx; + req->cam = camera; + req->camPtrIdx = camera->camId; req->callbackIdx = callbackIdx; req->unk_1C = 1; req->randIdx = ((s16)(Rand_ZeroOne() * (f32)0x10000) & ~3) + idx; @@ -291,8 +291,8 @@ void Quake_Init(void) { sQuakeRequestCount = 0; } -s16 Quake_Add(Camera* cam, u32 callbackIdx) { - return Quake_AddImpl(cam, callbackIdx)->randIdx; +s16 Quake_Add(Camera* camera, u32 callbackIdx) { + return Quake_AddImpl(camera, callbackIdx)->randIdx; } u32 Quake_RemoveFromIdx(s16 idx) { @@ -347,8 +347,8 @@ s16 Quake_Calc(Camera* camera, QuakeCamCalc* camData) { req->camPtrIdx); Quake_Remove(req); } else { - temp = &camera->thisIdx; - eq = req->cam->thisIdx != *temp; + temp = &camera->camId; + eq = req->cam->camId != *temp; absSpeedDiv = ABS(req->speed) / (f32)0x8000; if (sQuakeCallbacks[req->callbackIdx](req, &shake) == 0) { Quake_Remove(req); diff --git a/src/code/z_room.c b/src/code/z_room.c index d1446872f..77f718c73 100644 --- a/src/code/z_room.c +++ b/src/code/z_room.c @@ -307,7 +307,7 @@ void func_8009638C(Gfx** displayList, void* source, void* tlut, u16 width, u16 h // Room Draw Polygon Type 1 - Single Format void func_80096680(GlobalContext* globalCtx, Room* room, u32 flags) { - Camera* camera; + Camera* activeCam; Gfx* spA8; PolygonType1* polygon1; PolygonDlist* polygonDlist; @@ -318,8 +318,8 @@ void func_80096680(GlobalContext* globalCtx, Room* room, u32 flags) { OPEN_DISPS(globalCtx->state.gfxCtx, "../z_room.c", 628); - camera = GET_ACTIVE_CAM(globalCtx); - isFixedCamera = camera->setting == CAM_SET_PREREND_FIXED; + activeCam = GET_ACTIVE_CAM(globalCtx); + isFixedCamera = (activeCam->setting == CAM_SET_PREREND_FIXED); polygon1 = &room->mesh->polygon1; polygonDlist = SEGMENTED_TO_VIRTUAL(polygon1->dlist); drawBg = (flags & 1) && isFixedCamera && polygon1->single.source && !(SREG(25) & 1); @@ -341,7 +341,7 @@ void func_80096680(GlobalContext* globalCtx, Room* room, u32 flags) { { Vec3f sp60; spA8 = POLY_OPA_DISP; - Camera_GetSkyboxOffset(&sp60, camera); + Camera_GetSkyboxOffset(&sp60, activeCam); func_8009638C(&spA8, polygon1->single.source, polygon1->single.tlut, polygon1->single.width, polygon1->single.height, polygon1->single.fmt, polygon1->single.siz, polygon1->single.mode0, polygon1->single.tlutCount, @@ -364,34 +364,33 @@ void func_80096680(GlobalContext* globalCtx, Room* room, u32 flags) { } BgImage* func_80096A74(PolygonType1* polygon1, GlobalContext* globalCtx) { - Camera* camera; - s32 camId; - s16 camId2; + Camera* activeCam = GET_ACTIVE_CAM(globalCtx); + s32 camDataIdx; + s16 camDataIdx2; Player* player; BgImage* bgImage; s32 i; - camera = GET_ACTIVE_CAM(globalCtx); - camId = camera->camDataIdx; + camDataIdx = activeCam->camDataIdx; // jfifid - camId2 = func_80041C10(&globalCtx->colCtx, camId, BGCHECK_SCENE)[2].y; - if (camId2 >= 0) { - camId = camId2; + camDataIdx2 = func_80041C10(&globalCtx->colCtx, camDataIdx, BGCHECK_SCENE)[2].y; + if (camDataIdx2 >= 0) { + camDataIdx = camDataIdx2; } player = GET_PLAYER(globalCtx); - player->actor.params = (player->actor.params & 0xFF00) | camId; + player->actor.params = (player->actor.params & 0xFF00) | camDataIdx; bgImage = SEGMENTED_TO_VIRTUAL(polygon1->multi.list); for (i = 0; i < polygon1->multi.count; i++) { - if (bgImage->id == camId) { + if (bgImage->id == camDataIdx) { return bgImage; } bgImage++; } // "z_room.c: Data consistent with camera id does not exist camid=%d" - osSyncPrintf(VT_COL(RED, WHITE) "z_room.c:カメラIDに一致するデータが存在しません camid=%d\n" VT_RST, camId); + osSyncPrintf(VT_COL(RED, WHITE) "z_room.c:カメラIDに一致するデータが存在しません camid=%d\n" VT_RST, camDataIdx); LogUtils_HungupThread("../z_room.c", 726); return NULL; @@ -399,7 +398,7 @@ BgImage* func_80096A74(PolygonType1* polygon1, GlobalContext* globalCtx) { // Room Draw Polygon Type 1 - Multi Format void func_80096B6C(GlobalContext* globalCtx, Room* room, u32 flags) { - Camera* camera; + Camera* activeCam; Gfx* gfx; PolygonType1* polygon1; BgImage* bgImage; @@ -411,8 +410,8 @@ void func_80096B6C(GlobalContext* globalCtx, Room* room, u32 flags) { OPEN_DISPS(globalCtx->state.gfxCtx, "../z_room.c", 752); - camera = GET_ACTIVE_CAM(globalCtx); - isFixedCamera = camera->setting == CAM_SET_PREREND_FIXED; + activeCam = GET_ACTIVE_CAM(globalCtx); + isFixedCamera = (activeCam->setting == CAM_SET_PREREND_FIXED); polygon1 = &room->mesh->polygon1; polygonDlist = SEGMENTED_TO_VIRTUAL(polygon1->dlist); bgImage = func_80096A74(polygon1, globalCtx); @@ -436,7 +435,7 @@ void func_80096B6C(GlobalContext* globalCtx, Room* room, u32 flags) { Vec3f skyboxOffset; gfx = POLY_OPA_DISP; - Camera_GetSkyboxOffset(&skyboxOffset, camera); + Camera_GetSkyboxOffset(&skyboxOffset, activeCam); func_8009638C(&gfx, bgImage->source, bgImage->tlut, bgImage->width, bgImage->height, bgImage->fmt, bgImage->siz, bgImage->mode0, bgImage->tlutCount, (skyboxOffset.x + skyboxOffset.z) * 1.2f + skyboxOffset.y * 0.6f, |
