|
Трек 16: NPC и квестовый каркас — диалоги/квесты v1 в игре на v2
Контент «Пепельных луга» 1:1 из v1: реестры FLAGS/VARS, 7 предметов, NPC (Ирвин/Мила в Звенце, Клинт в роще по флагу act2_hook), 9 диалоговых графов (JSON + validateDialogue при старте), квесты как стадии с doneFlag/ready/progressKey, GameState (DialogueState движка). Сцена: NPC-манекены с точками взаимодействия (E — Поговорить), выбор графа — квест-стадия → repeat → dialogueFirst; в диалоге мир замер; эффекты графов исполняет игра (сумка, тосты); HUD — трекер квеста, сумка, тосты. Мост: npcInfo/talkTo/dialogueInfo/dialoguePick/ dialogueAdvance/dialogueAbort/setState/stateInfo. Движок: экспортирован evalConditions (ready-условия стадий — те же предикаты, что в графах диалогов). Гейт tools/checks/npc.mjs — 27 проверок (раскладка NPC v1, появление Клинта по флагу, выбор графа по стадиям включая сдачи, выбор ответа, сумка, флаги, трекер, motes_note, мир замер, панель диалога). Co-Authored-By: Claude Code <noreply@anthropic.com> |
|---|
|
|
| docs/plan.md |
|---|
| v2/CLAUDE.md |
|---|
| v2/apps/game/index.html |
|---|
| v2/apps/game/src/data/dialogues.ts 0 → 100644 |
|---|
| v2/apps/game/src/data/dialogues/clint_first.json 0 → 100644 |
|---|
| v2/apps/game/src/data/dialogues/clint_repeat.json 0 → 100644 |
|---|
| v2/apps/game/src/data/dialogues/clint_tune.json 0 → 100644 |
|---|
| v2/apps/game/src/data/dialogues/elder_first.json 0 → 100644 |
|---|
| v2/apps/game/src/data/dialogues/elder_hand_in.json 0 → 100644 |
|---|
| v2/apps/game/src/data/dialogues/elder_repeat.json 0 → 100644 |
|---|
| v2/apps/game/src/data/dialogues/trader_after.json 0 → 100644 |
|---|
| v2/apps/game/src/data/dialogues/trader_first.json 0 → 100644 |
|---|
| v2/apps/game/src/data/dialogues/trader_repeat.json 0 → 100644 |
|---|
| v2/apps/game/src/data/ids.ts 0 → 100644 |
|---|
| v2/apps/game/src/data/items.ts 0 → 100644 |
|---|
| v2/apps/game/src/data/npcs.ts 0 → 100644 |
|---|
| v2/apps/game/src/data/quests.ts 0 → 100644 |
|---|
| v2/apps/game/src/main.ts |
|---|
| v2/apps/game/src/state.ts 0 → 100644 |
|---|
| v2/apps/game/tools/checks/npc.mjs 0 → 100644 |
|---|
| v2/packages/engine/src/index.ts |
|---|