Small improvements to camera freeze (#244)
This commit is contained in:
parent
3a7034c4ed
commit
d03ec2dd9d
|
@ -3051,13 +3051,15 @@ void update_lakitu(struct Camera *c) {
|
|||
* Gets controller input, checks for cutscenes, handles mode changes, and moves the camera
|
||||
*/
|
||||
void update_camera(struct Camera *c) {
|
||||
if (gOverrideFreezeCamera && !gDjuiInMainMenu) {
|
||||
return;
|
||||
}
|
||||
UNUSED u8 unused[24];
|
||||
|
||||
gCamera = c;
|
||||
update_camera_hud_status(c);
|
||||
|
||||
if (gOverrideFreezeCamera && !gDjuiInMainMenu) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (c->cutscene == 0) {
|
||||
// Only process R_TRIG if 'fixed' is not selected in the menu
|
||||
if (cam_select_alt_mode(0) == CAM_SELECTION_MARIO
|
||||
|
@ -4006,7 +4008,8 @@ s32 update_camera_hud_status(struct Camera *c) {
|
|||
s16 status = CAM_STATUS_NONE;
|
||||
|
||||
if (c->cutscene != 0
|
||||
|| ((gPlayer1Controller->buttonDown & R_TRIG) && cam_select_alt_mode(0) == CAM_SELECTION_FIXED)) {
|
||||
|| ((gPlayer1Controller->buttonDown & R_TRIG) && cam_select_alt_mode(0) == CAM_SELECTION_FIXED)
|
||||
|| gOverrideFreezeCamera) {
|
||||
status |= CAM_STATUS_FIXED;
|
||||
} else if (set_cam_angle(0) == CAM_ANGLE_MARIO) {
|
||||
status |= CAM_STATUS_MARIO;
|
||||
|
|
|
@ -1075,7 +1075,7 @@ s32 act_first_person(struct MarioState *m) {
|
|||
set_camera_mode(m->area->camera, CAMERA_MODE_C_UP, 0x10);
|
||||
}
|
||||
m->actionState = 1;
|
||||
} else if (!(m->input & INPUT_FIRST_PERSON) || sp1C) {
|
||||
} else if (!(m->input & INPUT_FIRST_PERSON) || sp1C || gOverrideFreezeCamera) {
|
||||
if (m->playerIndex == 0) {
|
||||
raise_background_noise(2);
|
||||
// Go back to the last camera mode
|
||||
|
|
Loading…
Reference in New Issue