From bdea6a8c2859c842b8a28fb0286e8dca9839f4eb Mon Sep 17 00:00:00 2001 From: gahusb Date: Thu, 18 Jun 2026 01:56:30 +0900 Subject: [PATCH] =?UTF-8?q?fix(debug):=20Ctrl+Shift+E=20=EC=B9=98=ED=8A=B8?= =?UTF-8?q?=EC=97=90=20=EC=B2=B4=EB=A0=A5=20=ED=9A=8C=EB=B3=B5=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80=20(=EC=B2=B4=EB=A0=A5+=EC=97=90=EB=84=88=EC=A7=80=20?= =?UTF-8?q?=EC=A0=84=EC=B2=B4=20=ED=9A=8C=EB=B3=B5)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 원인: Ctrl+Shift+E의 CheatFillEnergy는 #75에서 energy-only로 만들어져 self.Energy만 채우고 self.PlayerHp는 전혀 건드리지 않았다(설계상 체력 미회복). 바인딩·발동은 정상(Ctrl+Shift+C 카드 picker와 동일 입력 메커니즘)이라 에너지는 차지만 체력은 회복된 적이 없었음 → "체력 회복 안됨". 수정: CheatFillEnergy에 self.PlayerHp = self.PlayerMaxHp 추가 + RenderCombat() 호출(HP 표시 갱신). 누르던 Ctrl+Shift+E 그대로 체력+에너지 전체 회복으로 확장. 토스트 "치트: 체력·에너지 회복", README 디버그 단축키 표기도 갱신. 산출물 재생성: SlayDeckController.codeblock. 검증: cbgap GAP 0, JS 41/41. Co-Authored-By: Claude Opus 4.8 (1M context) --- README.md | 2 +- RootDesk/MyDesk/SlayDeckController.codeblock | 2 +- tools/deck/cb/boot.mjs | 4 +++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 7d8361b..d102b1b 100644 --- a/README.md +++ b/README.md @@ -164,7 +164,7 @@ c:AdjustAscension(1) -- 메뉴에서 승천 단계 +1 | 단축키 | 기능 | |---|---| | **Ctrl + Shift + C** | **카드 picker** — 직업 전체 카드 패널을 띄우고, 카드를 클릭하면 **즉시 손패에 추가**. 상단 탭(전사/도적/마법사)으로 직업별 카드 풀 전환. 카드 효과·메커니즘 즉석 테스트용 | -| **Ctrl + Shift + E** | **에너지 치트** — 현재 에너지를 최대치로 회복 | +| **Ctrl + Shift + E** | **전체 회복 치트** — 체력·에너지를 최대치로 회복 | > 카드 picker는 메이커 저작 UI `DeckUIGroup/DeckAllHud`(120 슬롯 그리드 + 직업 탭 3종)를 사용하고, 컨트롤러가 런타임에 카드 비주얼·버튼을 바인딩합니다. 구현: 키 바인딩 `tools/deck/cb/boot.mjs`, picker 로직 `tools/deck/cb/deckview.mjs`(`OpenDebugCardPicker`/`OnAllDeckCardButton`), 버튼 바인딩 `tools/deck/cb/deckturn.mjs`(`BindButtons`). 옛 picker UI 생성기 `tools/deck/legacy/hud/deckall.mjs`는 UI 메이커-저작 전환 후 **휴면**(Maker UI가 대체). diff --git a/RootDesk/MyDesk/SlayDeckController.codeblock b/RootDesk/MyDesk/SlayDeckController.codeblock index 42559f5..f432853 100644 --- a/RootDesk/MyDesk/SlayDeckController.codeblock +++ b/RootDesk/MyDesk/SlayDeckController.codeblock @@ -811,7 +811,7 @@ "Name": null }, "Arguments": [], - "Code": "if self.RunActive ~= true or self.CombatOver == true then\n\treturn\nend\nself.Energy = self.MaxEnergy\nself:RenderPiles()\nself:Toast(\"치트: 에너지 회복\")", + "Code": "if self.RunActive ~= true or self.CombatOver == true then\n\treturn\nend\nself.PlayerHp = self.PlayerMaxHp\nself.Energy = self.MaxEnergy\nself:RenderCombat()\nself:RenderPiles()\nself:Toast(\"치트: 체력·에너지 회복\")", "Scope": 2, "ExecSpace": 6, "Attributes": [], diff --git a/tools/deck/cb/boot.mjs b/tools/deck/cb/boot.mjs index 93209e3..9c84ec7 100644 --- a/tools/deck/cb/boot.mjs +++ b/tools/deck/cb/boot.mjs @@ -56,9 +56,11 @@ end)`), method('CheatFillEnergy', `if self.RunActive ~= true or self.CombatOver == true then return end +self.PlayerHp = self.PlayerMaxHp self.Energy = self.MaxEnergy +self:RenderCombat() self:RenderPiles() -self:Toast("치트: 에너지 회복")`), +self:Toast("치트: 체력·에너지 회복")`), method('ReqLoadAscension', `local ds = _DataStorageService:GetUserDataStorage(userId) local errCode, value = ds:GetAndWait("ascensionUnlocked") local n = 0