From 5a7d5ecfe108a964a7cff77847112f4a76df3d9e Mon Sep 17 00:00:00 2001 From: kckckc Date: Sat, 28 May 2022 15:20:56 -0700 Subject: [PATCH 1/2] fix #1838: Fix camera speed when rezoning while mounted --- src/client/js/rendering/renderer.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/client/js/rendering/renderer.js b/src/client/js/rendering/renderer.js index 2eb49ebf..47a9a878 100644 --- a/src/client/js/rendering/renderer.js +++ b/src/client/js/rendering/renderer.js @@ -326,6 +326,8 @@ define([ c.zoneId = this.zoneId; events.emit('onGetObject', c); }); + + events.emit('onMoveSpeedChange', 0); }, setPosition: function (pos, instant) { From cc95b903517a3b485460402369975cef25b34336 Mon Sep 17 00:00:00 2001 From: kckckc Date: Sat, 28 May 2022 22:01:12 -0700 Subject: [PATCH 2/2] add explanation --- src/client/js/rendering/renderer.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/client/js/rendering/renderer.js b/src/client/js/rendering/renderer.js index 47a9a878..cc4315b9 100644 --- a/src/client/js/rendering/renderer.js +++ b/src/client/js/rendering/renderer.js @@ -327,6 +327,10 @@ define([ events.emit('onGetObject', c); }); + //Normally, the mounts mod queues this event when unmounting. + // If we rezone, our effects are destroyed, so the event is queued, + // but flushForTarget clears the event right after and the event is never received. + // We emit it again here to make sure the speed is reset after entering the new zone. events.emit('onMoveSpeedChange', 0); },