맵에 상점/휴식 노드 추가, 진입 시 전투 대신 상호작용 UI로 분기. - data/map.json: 4행 맵에 rest(휴식)·shop(상점) 노드 추가(enemy 없음) - 생성기: enemy 선택적 검증/직렬화, MapHud 노드 y 행수 비례 중앙정렬, TYPE_KO에 상점/휴식 - PickNode 타입 분기: shop→ShowShop, rest→ShowRest, 그 외→StartCombat - 상점: ShowShop(카드3 무작위)·RenderShop·BuyCard(골드-30·RunDeck+1·재구매/부족 가드) - 휴식: ShowRest(HP+30 상한 클램프) - LeaveNode(상점/휴식 공용 나가기→ShowMap) - UI: ShopHud(카드3·가격·골드·나가기)·RestHud(회복 정보·나가기), 상수 CARD_PRICE=30·REST_HEAL=30 - 메이커 Play 검증: 상점 구매(부족/재구매 무시 포함)·휴식 회복·맵 분기 정상 - 알려진 튜닝: 골드/승리 15 < 카드값 30 → 경제 밸런싱 필요(sim-balance 활용) - 범위 밖: 카드 제거(덱 보기 UI)·유물(E5)·저장(E6) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
13 lines
628 B
JSON
13 lines
628 B
JSON
{
|
|
"start": ["A", "B"],
|
|
"nodes": {
|
|
"A": { "type": "combat", "enemy": "slime", "row": 1, "col": -1, "next": ["C", "D"] },
|
|
"B": { "type": "combat", "enemy": "slime", "row": 1, "col": 1, "next": ["C", "D"] },
|
|
"C": { "type": "rest", "row": 2, "col": -1, "next": ["E", "F"] },
|
|
"D": { "type": "shop", "row": 2, "col": 1, "next": ["E", "F"] },
|
|
"E": { "type": "elite", "enemy": "slime_elite", "row": 3, "col": -1, "next": ["BOSS"] },
|
|
"F": { "type": "combat", "enemy": "slime", "row": 3, "col": 1, "next": ["BOSS"] },
|
|
"BOSS": { "type": "boss", "enemy": "slime_boss", "row": 4, "col": 0, "next": [] }
|
|
}
|
|
}
|