summaryrefslogtreecommitdiff
path: root/soh/src/code/z_camera.c
diff options
context:
space:
mode:
authordjevangelia <263709373+djevangelia@users.noreply.github.com>2026-07-08 21:58:24 +0200
committerGitHub <noreply@github.com>2026-07-08 19:58:24 +0000
commit73df35c6ab50d5fbec57ae2fb154eb89c7bc7ff1 (patch)
tree17506d14a4337efaa0a88e7fa0984bb24badbc39 /soh/src/code/z_camera.c
parent2fc787d64bc5d6a5f37832c41b96f430a5687123 (diff)
Bugfix, child Hookshot first person in Hylia lab (#6847)
Diffstat (limited to 'soh/src/code/z_camera.c')
-rw-r--r--soh/src/code/z_camera.c56
1 files changed, 28 insertions, 28 deletions
diff --git a/soh/src/code/z_camera.c b/soh/src/code/z_camera.c
index 24d7f434e..c103ef555 100644
--- a/soh/src/code/z_camera.c
+++ b/soh/src/code/z_camera.c
@@ -2715,8 +2715,8 @@ s32 Camera_Jump3(Camera* camera) {
anim->mode = CAM_MODE_NORMAL;
modeSwitch = true;
}
- } else if (((camera->waterYPos - eye->y) > OREG(45)) && (anim->mode != CAM_MODE_BOOMERANG)) {
- anim->mode = CAM_MODE_BOOMERANG;
+ } else if (((camera->waterYPos - eye->y) > OREG(45)) && (anim->mode != CAM_MODE_AIM_BOOMERANG)) {
+ anim->mode = CAM_MODE_AIM_BOOMERANG;
modeSwitch = true;
}
@@ -5281,7 +5281,7 @@ s32 Camera_Unique9(Camera* camera) {
}
} else {
// We've gone through all the keyframes.
- if (camera->thisIdx != MAIN_CAM) {
+ if (camera->thisIdx != CAM_ID_MAIN) {
camera->timer = 0;
}
return true;
@@ -5618,20 +5618,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->parentCamIdx <= SUBCAM_NONE ? CAM_ID_MAIN : camera->parentCamIdx;
Camera_ChangeModeFlags(camera->play->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->parentCamIdx <= SUBCAM_NONE ? CAM_ID_MAIN : camera->parentCamIdx;
Camera* cam = camera->play->cameraPtrs[camIdx];
*eye = *eyeNext;
Camera_Copy(cam, camera);
}
default:
- if (camera->thisIdx != MAIN_CAM) {
+ if (camera->thisIdx != CAM_ID_MAIN) {
camera->timer = 0;
}
}
@@ -6052,7 +6052,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->parentCamIdx != CAM_ID_MAIN) {
ONEPOINT_CS_INFO(camera)->keyFrameCnt--;
} else {
camera->timer += D_8011D6AC[2].timerInit;
@@ -6062,7 +6062,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->parentCamIdx != CAM_ID_MAIN) {
ONEPOINT_CS_INFO(camera)->keyFrameCnt--;
} else {
camera->timer += D_8011D724[2].timerInit;
@@ -6084,7 +6084,7 @@ s32 Camera_Demo5(Camera* camera) {
D_8011D79C[1].timerInit = camera->timer - 1;
- if (camera->parentCamIdx != MAIN_CAM) {
+ if (camera->parentCamIdx != CAM_ID_MAIN) {
ONEPOINT_CS_INFO(camera)->keyFrameCnt -= 2;
} else {
camera->timer += D_8011D79C[2].timerInit + D_8011D79C[3].timerInit;
@@ -6095,7 +6095,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->parentCamIdx != CAM_ID_MAIN) {
ONEPOINT_CS_INFO(camera)->keyFrameCnt--;
} else {
camera->timer += D_8011D83C[1].timerInit;
@@ -6108,7 +6108,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->parentCamIdx != CAM_ID_MAIN) {
ONEPOINT_CS_INFO(camera)->keyFrameCnt--;
} else {
camera->timer += D_8011D88C[1].timerInit;
@@ -6126,7 +6126,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->parentCamIdx != CAM_ID_MAIN) {
ONEPOINT_CS_INFO(camera)->keyFrameCnt -= 2;
} else {
camera->timer += D_8011D8DC[1].timerInit + D_8011D8DC[2].timerInit;
@@ -6163,7 +6163,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->parentCamIdx != CAM_ID_MAIN) {
ONEPOINT_CS_INFO(camera)->keyFrameCnt -= 2;
} else {
camera->timer += D_8011D954[2].timerInit + D_8011D954[3].timerInit;
@@ -6188,7 +6188,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->parentCamIdx != CAM_ID_MAIN) {
if (camera->play->state.frames & 1) {
D_8011D9F4[0].rollTargetInit = -D_8011D9F4[0].rollTargetInit;
D_8011D9F4[1].rollTargetInit = -D_8011D9F4[1].rollTargetInit;
@@ -6250,7 +6250,7 @@ s32 Camera_Demo6(Camera* camera) {
s16 stateTimers[4];
Vec3f* at = &camera->at;
- mainCam = Play_GetCamera(camera->play, MAIN_CAM);
+ mainCam = Play_GetCamera(camera->play, CAM_ID_MAIN);
camFocus = camera->target;
stateTimers[1] = 0x37;
stateTimers[2] = 0x46;
@@ -6355,7 +6355,7 @@ s32 Camera_Demo9(Camera* camera) {
f32* camFOV = &camera->fov;
Demo9Anim* anim = &demo9->anim;
- mainCam = Play_GetCamera(camera->play, MAIN_CAM);
+ mainCam = Play_GetCamera(camera->play, CAM_ID_MAIN);
mainCamPlayerPosRot = &mainCam->playerPosRot;
if (RELOAD_PARAMS) {
values = sCameraSettings[camera->setting].cameraModes[camera->mode].values;
@@ -7156,7 +7156,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->thisIdx == CAM_ID_MAIN) {
Camera_UpdateWater(camera);
}
}
@@ -7398,7 +7398,7 @@ s32 Camera_UpdateHotRoom(Camera* camera) {
s32 Camera_DbgChangeMode(Camera* camera) {
s32 changeDir = 0;
- if (!gDbgCamEnabled && camera->play->activeCamera == MAIN_CAM) {
+ if (!gDbgCamEnabled && camera->play->activeCamera == CAM_ID_MAIN) {
if (CHECK_BTN_ALL(D_8015BD7C->state.input[2].press.button, BTN_CUP)) {
osSyncPrintf("attention sound URGENCY\n");
Sfx_PlaySfxCentered(NA_SE_SY_ATTENTION_URGENCY);
@@ -7525,7 +7525,7 @@ Vec3s Camera_Update(Camera* camera) {
QuakeCamCalc quake;
Player* player;
- player = camera->play->cameraPtrs[MAIN_CAM]->player;
+ player = camera->play->cameraPtrs[CAM_ID_MAIN]->player;
if (R_DBG_CAM_UPDATE) {
osSyncPrintf("camera: in %x\n", camera);
@@ -7631,7 +7631,7 @@ Vec3s Camera_Update(Camera* camera) {
if ((gSaveContext.gameMode != GAMEMODE_NORMAL) && (gSaveContext.gameMode != GAMEMODE_END_CREDITS)) {
sCameraInterfaceFlags = 0;
Camera_UpdateInterface(sCameraInterfaceFlags);
- } else if ((D_8011D3F0 != 0) && (camera->thisIdx == MAIN_CAM)) {
+ } else if ((D_8011D3F0 != 0) && (camera->thisIdx == CAM_ID_MAIN)) {
D_8011D3F0--;
sCameraInterfaceFlags = 0x3200;
Camera_UpdateInterface(sCameraInterfaceFlags);
@@ -7764,13 +7764,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->play->cameraPtrs[MAIN_CAM];
+ Camera* mainCam = camera->play->cameraPtrs[CAM_ID_MAIN];
Player* player = GET_PLAYER(camera->play);
if (camera->timer == 0) {
Play_ChangeCameraStatus(camera->play, camera->parentCamIdx, CAM_STAT_ACTIVE);
- if ((camera->parentCamIdx == MAIN_CAM) && (camera->csId != 0)) {
+ if ((camera->parentCamIdx == CAM_ID_MAIN) && (camera->csId != 0)) {
player->actor.freezeTimer = 0;
player->stateFlags1 &= ~PLAYER_STATE1_IN_CUTSCENE;
@@ -7790,7 +7790,7 @@ void Camera_Finish(Camera* camera) {
PARENT_CAM(camera)->childCamIdx = camera->childCamIdx;
}
- if (PARENT_CAM(camera)->thisIdx == MAIN_CAM) {
+ if (PARENT_CAM(camera)->thisIdx == CAM_ID_MAIN) {
PARENT_CAM(camera)->animState = 0;
}
@@ -7821,7 +7821,7 @@ s32 Camera_ChangeModeFlags(Camera* camera, s16 mode, u8 flags) {
}
if (!((sCameraSettings[camera->setting].unk_00 & 0x3FFFFFFF) & (1 << mode))) {
- if (mode == CAM_MODE_FIRSTPERSON) {
+ if (mode == CAM_MODE_FIRST_PERSON) {
osSyncPrintf("camera: error sound\n");
Sfx_PlaySfxCentered(NA_SE_SY_ERROR);
}
@@ -7849,7 +7849,7 @@ s32 Camera_ChangeModeFlags(Camera* camera, s16 mode, u8 flags) {
Camera_CopyDataToRegs(camera, mode);
modeChangeFlags = 0;
switch (mode) {
- case CAM_MODE_FIRSTPERSON:
+ case CAM_MODE_FIRST_PERSON:
modeChangeFlags = 0x20;
break;
case CAM_MODE_BATTLE:
@@ -7870,7 +7870,7 @@ s32 Camera_ChangeModeFlags(Camera* camera, s16 mode, u8 flags) {
}
switch (camera->mode) {
- case CAM_MODE_FIRSTPERSON:
+ case CAM_MODE_FIRST_PERSON:
if (modeChangeFlags & 0x20) {
camera->animState = 0xA;
}
@@ -7932,7 +7932,7 @@ s32 Camera_ChangeModeFlags(Camera* camera, s16 mode, u8 flags) {
// Clear free look if an action is performed that would move the camera (targeting, first person, talking)
if (CVarGetInteger(CVAR_SETTING("FreeLook.Enabled"), 0) && SetCameraManual(camera) == 1 &&
((mode >= CAM_MODE_TARGET && mode <= CAM_MODE_BATTLE) ||
- (mode >= CAM_MODE_FIRSTPERSON && mode <= CAM_MODE_CLIMBZ) || mode == CAM_MODE_HANGZ ||
+ (mode >= CAM_MODE_FIRST_PERSON && mode <= CAM_MODE_CLIMBZ) || mode == CAM_MODE_HANGZ ||
mode == CAM_MODE_FOLLOWBOOMERANG)) {
camera->play->manualCamera = false;
}
@@ -8346,7 +8346,7 @@ s32 func_8005B198() {
s16 func_8005B1A4(Camera* camera) {
camera->unk_14C |= 0x8;
- if ((camera->thisIdx == MAIN_CAM) && (camera->play->activeCamera != MAIN_CAM)) {
+ if ((camera->thisIdx == CAM_ID_MAIN) && (camera->play->activeCamera != CAM_ID_MAIN)) {
GET_ACTIVE_CAM(camera->play)->unk_14C |= 0x8;
return camera->play->activeCamera;
}