From de1e69de7d21c3de91fd9290ab64ffabf99d6068 Mon Sep 17 00:00:00 2001 From: gahusb Date: Sun, 14 Jun 2026 12:31:50 +0900 Subject: [PATCH] =?UTF-8?q?fix(lobby):=20=EC=A0=84=ED=88=AC=EB=A7=B5=20Pla?= =?UTF-8?q?yerLock=EC=97=90=20WalkAcceleration=3D0=20=EB=9F=B0=ED=83=80?= =?UTF-8?q?=EC=9E=84=20=EC=9E=AC=EC=9E=A0=EA=B8=88=20(P15)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 로비에서 푼 이동(WalkAcceleration)이 텔레포트 후 전투맵에 누설돼도 PlayerLock이 맵 로드 시 0으로 재설정해 확실히 잠금. 정찰로 WalkAcceleration이 실제 이동 레버임을 확인. Co-Authored-By: Claude Opus 4.8 (1M context) --- RootDesk/MyDesk/PlayerLock.codeblock | 2 +- tools/player/gen-player-lock.mjs | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/RootDesk/MyDesk/PlayerLock.codeblock b/RootDesk/MyDesk/PlayerLock.codeblock index bc566d5..a0bc96d 100644 --- a/RootDesk/MyDesk/PlayerLock.codeblock +++ b/RootDesk/MyDesk/PlayerLock.codeblock @@ -47,7 +47,7 @@ "Name": null }, "Arguments": [], - "Code": "self.LockTries = 0\nlocal eventId = 0\nlocal function apply()\n\tself.LockTries = self.LockTries + 1\n\tlocal pc = nil\n\tlocal lp = _UserService.LocalPlayer\n\tif lp ~= nil then\n\t\tpc = lp.PlayerControllerComponent\n\tend\n\tif pc ~= nil then\n\t\tpc.LookDirectionX = 1\n\t\tpc.FixedLookAt = true\n\t\tpc.Enable = false\n\tend\n\tif pc ~= nil then\n\t\t_TimerService:ClearTimer(eventId)\n\telseif self.LockTries > 30 then\n\t\t_TimerService:ClearTimer(eventId)\n\tend\nend\neventId = _TimerService:SetTimerRepeat(apply, 0.1)", + "Code": "self.LockTries = 0\nlocal eventId = 0\nlocal function apply()\n\tself.LockTries = self.LockTries + 1\n\tlocal pc = nil\n\tlocal lp = _UserService.LocalPlayer\n\tif lp ~= nil then\n\t\tpc = lp.PlayerControllerComponent\n\tend\n\tif pc ~= nil then\n\t\tpc.LookDirectionX = 1\n\t\tpc.FixedLookAt = true\n\t\tpc.Enable = false\n\tend\n\tif lp ~= nil and lp.RigidbodyComponent ~= nil then\n\t\tlp.RigidbodyComponent.WalkAcceleration = 0\n\tend\n\tif pc ~= nil then\n\t\t_TimerService:ClearTimer(eventId)\n\telseif self.LockTries > 30 then\n\t\t_TimerService:ClearTimer(eventId)\n\tend\nend\neventId = _TimerService:SetTimerRepeat(apply, 0.1)", "Scope": 2, "ExecSpace": 6, "Attributes": [], diff --git a/tools/player/gen-player-lock.mjs b/tools/player/gen-player-lock.mjs index 0120cff..d5169c4 100644 --- a/tools/player/gen-player-lock.mjs +++ b/tools/player/gen-player-lock.mjs @@ -65,6 +65,9 @@ local function apply() pc.FixedLookAt = ${FIXED_LOOK_AT} pc.Enable = ${CONTROLLER_ENABLE} end + if lp ~= nil and lp.RigidbodyComponent ~= nil then + lp.RigidbodyComponent.WalkAcceleration = 0 + end if pc ~= nil then _TimerService:ClearTimer(eventId) elseif self.LockTries > 30 then