diff --git a/source/funkin/play/PlayState.hx b/source/funkin/play/PlayState.hx index 2fcdaddf5..6678cfc3c 100644 --- a/source/funkin/play/PlayState.hx +++ b/source/funkin/play/PlayState.hx @@ -3189,7 +3189,7 @@ class PlayState extends MusicBeatSubState /** * Resets the camera's zoom level and focus point. */ - public function resetCamera(?resetZoom:Bool = true, ?cancelTweens:Bool = true):Void + public function resetCamera(?resetZoom:Bool = true, ?cancelTweens:Bool = true, ?snap:Bool = true):Void { // Cancel camera tweens if any are active. if (cancelTweens) @@ -3206,7 +3206,7 @@ class PlayState extends MusicBeatSubState } // Snap the camera to the follow point immediately. - FlxG.camera.focusOn(cameraFollowPoint.getPosition()); + if (snap) FlxG.camera.focusOn(cameraFollowPoint.getPosition()); } /** diff --git a/source/funkin/play/event/FocusCameraSongEvent.hx b/source/funkin/play/event/FocusCameraSongEvent.hx index 074fafccf..ecb41de98 100644 --- a/source/funkin/play/event/FocusCameraSongEvent.hx +++ b/source/funkin/play/event/FocusCameraSongEvent.hx @@ -127,7 +127,8 @@ class FocusCameraSongEvent extends SongEvent switch (ease) { case 'CLASSIC': // Old-school. No ease. Just set follow point. - PlayState.instance.resetCamera(false, true); + PlayState.instance.resetCamera(false, false, false); + PlayState.instance.cancelCameraFollowTween(); PlayState.instance.cameraFollowPoint.setPosition(targetX, targetY); case 'INSTANT': // Instant ease. Duration is automatically 0. PlayState.instance.tweenCameraToPosition(targetX, targetY, 0);