Newer
Older
rpg / apps / game / src / data / dialogues.ts
import type { DialogueGraph } from '@rpg/engine';
import elderFirst from './dialogues/elder_first.json';
import elderRepeat from './dialogues/elder_repeat.json';
import elderHandIn from './dialogues/elder_hand_in.json';
import traderFirst from './dialogues/trader_first.json';
import traderRepeat from './dialogues/trader_repeat.json';
import traderAfter from './dialogues/trader_after.json';

/**
 * Диалоги NPC как графы (по docs/world.md, акт 1). Источник истины — JSON
 * в data/dialogues/ (формат 4 пробела + \n): их правит и визуальный редактор,
 * и человек руками. Флаги/вары/предметы — строками, сверяются с реестрами
 * validate.ts (checkGraph). Мила — безгласная: шёпотом, коротко.
 * Ирвин — экономит дыхание.
 */
export const DIALOGUES: Record<string, DialogueGraph> = {
    elder_first: elderFirst as unknown as DialogueGraph,
    elder_repeat: elderRepeat as unknown as DialogueGraph,
    elder_hand_in: elderHandIn as unknown as DialogueGraph,
    trader_first: traderFirst as unknown as DialogueGraph,
    trader_repeat: traderRepeat as unknown as DialogueGraph,
    trader_after: traderAfter as unknown as DialogueGraph
};