Батч 2: интерьеры и интерактивные объекты
- Интерьеры house_elder/shop: buildInteriorMap (тайлы FLOOR/WALL), двери
  кликом внутрь, выход через проём (transition kind 'return' по returnTo).
- InteractableDef/INTERACTABLES: реакции по when (flag/notFlag/varAtLeast),
  once -> флаг used:<id>, эффекты setFlags/clearFlags/setVar/gives/sound.
- Системы: resolveInteractable (чистый) + Interactables (InteractSink);
  pendingInteraction в LocationScene, подписи объектов при близости.
- Сундук/очаг/записка (дом Ирвина), прилавок (лавка Милы).
- Снапшот interactables; GameAgent.waitFor ждёт по полному снапшоту игры.
- Валидатор: переходы в существующие области + объекты в границах.
- Сейвы v3 (returnTo), миграция v1/v2.
- Исправление: колодец (22,20) перенесён в buildMeadowsMap (индекс 582
  за пределами 28x20 молча дорастал массив).
- Сценарий tools/checks/interact.mjs (7 проверок); тесты резолвера/рантайма.
- Доки: agent.md (waitFor по полному снапшоту, валидация), practices.md
  (ситуация «интерьер/объект»), demo.md, CLAUDE.md.

Co-Authored-By: Claude Code <noreply@anthropic.com>
1 parent c33bafa commit 3cedd8d78097f9e2ca0bf49cf96541b28d0aa89d
@root root authored 10 hours ago
Showing 23 changed files
View
CLAUDE.md
View
apps/game/assets/maps/house_elder.map 0 → 100644
View
apps/game/assets/maps/meadows.map
View
apps/game/assets/maps/ponds.map
View
apps/game/assets/maps/shop.map 0 → 100644
View
apps/game/assets/maps/zvenets.map
View
apps/game/src/agent/GameAgent.ts
View
apps/game/src/agent/snapshot.ts
View
apps/game/src/data/__tests__/interactables.test.ts 0 → 100644
View
apps/game/src/data/interactables.ts 0 → 100644
View
apps/game/src/data/locations.ts
View
apps/game/src/data/map.ts
View
apps/game/src/data/validate.ts
View
apps/game/src/scenes/LocationScene.ts
View
apps/game/src/scenes/MenuScene.ts
View
apps/game/src/systems/Interactables.ts 0 → 100644
View
apps/game/src/systems/__tests__/Interactables.test.ts 0 → 100644
View
docs/demo.md
View
docs/engine/agent.md
View
docs/engine/practices.md
View
tools/agent.mjs
View
tools/checks/interact.mjs 0 → 100644
View
tools/maps/gen.test.ts