From 9b8884da8121047603bd8b4ecf1ad245e309d7d2 Mon Sep 17 00:00:00 2001 From: gahusb Date: Wed, 17 Jun 2026 22:14:41 +0900 Subject: [PATCH] =?UTF-8?q?fix(deck):=20=EB=AA=AC=EC=8A=A4=ED=84=B0=20?= =?UTF-8?q?=EC=83=81=ED=83=9C=20=EC=8A=AC=EB=A1=AF=EC=9D=B4=20=EB=AA=AC?= =?UTF-8?q?=EC=8A=A4=ED=84=B0=EB=A5=BC=20=EC=A7=80=EC=86=8D=20=EC=B6=94?= =?UTF-8?q?=EC=A2=85=20(=EC=B9=B4=EB=A9=94=EB=9D=BC=20=EC=A0=95=EC=B0=A9?= =?UTF-8?q?=20=EC=A0=84=20=EB=B0=B0=EC=B9=98=20=EB=B2=84=EA=B7=B8)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit MonsterStatus 슬롯이 너무 오른쪽으로 어긋나던 문제. 원인: StartCombat이 KickCombatCamera(0.2s 지연 재confine)+플레이어 텔레포트 정착 전에 BuildMonsters→PositionMonsterSlot을 실행 → 전이중 카메라로 world→screen 변환이 잘못돼 슬롯이 화면 밖 우측에 배치, 카메라 정착 후 재배치 안 됨(고정). 메이커 MCP 플레이테스트로 확정(StartCombat 시점 ui x=978 / 정착 후 정답 442). 수정: StartCombat 끝에 전투 중 슬롯 지속 추종 타이머(0.15s) 추가 — 살아있는 몬스터마다 PositionMonsterSlot 재호출, CombatOver/몬스터0이면 자동 종료. 카메라 정착 타이밍과 무관하게 슬롯이 항상 몬스터 머리 위 추종. 검증: 정착 후 slotUiX == monScreenX-960 (몬스터 위 정확), 스크린샷 확인. Co-Authored-By: Claude Opus 4.8 (1M context) --- tools/deck/cb/run.mjs | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/tools/deck/cb/run.mjs b/tools/deck/cb/run.mjs index 2d5afe1..9e4e825 100644 --- a/tools/deck/cb/run.mjs +++ b/tools/deck/cb/run.mjs @@ -95,7 +95,19 @@ self:BuildMonsters() self:RenderCombat() self:StartPlayerTurn() self:ApplyRelics("combatStart") -self:RenderCombat()`), +self:RenderCombat() +local slotTid = 0 +slotTid = _TimerService:SetTimerRepeat(function() + if self.CombatOver == true or self.Monsters == nil or #self.Monsters == 0 then + _TimerService:ClearTimer(slotTid) + return + end + for i = 1, #self.Monsters do + if self.Monsters[i] ~= nil and self.Monsters[i].alive == true then + self:PositionMonsterSlot(i) + end + end +end, 0.15)`), method('RegisterMonster', `if self.Registered == nil then self.Registered = {} end