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;