From 110d6ef32e8ea76bdaef9225c92fdf16c0a1d8cb Mon Sep 17 00:00:00 2001 From: Sunk <69110309+Sunketchupm@users.noreply.github.com> Date: Tue, 1 Apr 2025 20:35:13 -0400 Subject: [PATCH] Further fix camera (#727) * Further fix camera * Remove re-override --- src/game/camera.c | 8 +++++++- src/pc/network/network.c | 1 - 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/game/camera.c b/src/game/camera.c index f4626227f..928f79729 100644 --- a/src/game/camera.c +++ b/src/game/camera.c @@ -42,6 +42,7 @@ static u8 sSoftResettingCamera = FALSE; u8 gCameraUseCourseSpecificSettings = TRUE; +u8 CCSSChangedByMod = FALSE; u8 gOverrideFreezeCamera = FALSE; u8 gOverrideAllowToxicGasCamera = FALSE; @@ -69,6 +70,8 @@ void romhack_camera_reset_settings(void) { gRomhackCameraSettings.zoomedInHeight = 300; gRomhackCameraSettings.zoomedOutHeight = 450; gRomhackCameraSettings.modsOnly = FALSE; + gCameraUseCourseSpecificSettings = TRUE; + CCSSChangedByMod = FALSE; } /** @@ -12171,6 +12174,7 @@ void obj_rotate_towards_point(struct Object *o, Vec3f point, s16 pitchOff, s16 y void camera_set_use_course_specific_settings(u8 enable) { gCameraUseCourseSpecificSettings = enable; + CCSSChangedByMod = TRUE; } #include "behaviors/intro_peach.inc.c" @@ -12212,7 +12216,9 @@ void romhack_camera_init_settings(void) { } gRomhackCameraSettings.enable = override; - gCameraUseCourseSpecificSettings = (dynos_level_is_vanilla_level(gCurrLevelNum)); + if (!CCSSChangedByMod) { + gCameraUseCourseSpecificSettings = dynos_level_is_vanilla_level(gCurrLevelNum); + } gRomhackCameraSettings.collisions = configRomhackCameraHasCollision; gRomhackCameraSettings.centering = configRomhackCameraHasCentering; gRomhackCameraSettings.dpad = configRomhackCameraDPadBehavior; diff --git a/src/pc/network/network.c b/src/pc/network/network.c index 1c5cedf1c..529f35f65 100644 --- a/src/pc/network/network.c +++ b/src/pc/network/network.c @@ -703,7 +703,6 @@ void network_shutdown(bool sendLeaving, bool exiting, bool popup, bool reconnect extern s16 gChangeLevel; gChangeLevel = LEVEL_CASTLE_GROUNDS; network_player_init(); - camera_set_use_course_specific_settings(true); gMarioStates[0].cap = 0; gMarioStates[0].input = 0; extern s16 gTTCSpeedSetting;