diff --git a/docs/demo.md b/docs/demo.md index 35033fd..8a0f17d 100644 --- a/docs/demo.md +++ b/docs/demo.md @@ -15,15 +15,15 @@ | SceneManager (replace/push/pop, fade) | меню → локация → сумка/сейвы; переходы локаций | готово | | InputManager (действия, геймпад, мульти-биндинг) | advance/attack/menu/inventory/debug; геймпад-карта | готово | | VirtualJoystick | тач в локациях (включается при первом касании) | готово | -| IsometricTileMap + A* | карты локаций, движение кнопками (мост: scene:walk) | готово | +| IsometricTileMap + A* | карты локаций ×2 (внешние области 48–56 тайлов), движение кнопками (мост: scene:walk); tall-объекты: деревья, изометрические дома (5 видов, две стены + крыша), башня, колодцы, валун и куст | готово | | mapFormat (JSON+RLE) | карты — файлы `assets/maps/*.map`, генерация `npm run maps` | готово | -| renderMinimap (чистый рендер карты → RGBA) | предмет «Карта окрестностей» (Ирвин даёт с квестом): оверлей `MapScene` — схема области с палитрой тайлов, маркеры переходов/NPC, мигающий герой | готово | +| renderMinimap (чистый рендер карты → RGBA) | предмет «Карта окрестностей» (Ирвин даёт с квестом): оверлей `MapScene` — **карта мира «Низина Звенца»**: композит миниатюр 5 внешних областей (cell = 1) на одном листе, дороги между переходами, подписи областей, маркеры переходов/NPC текущей области, мигающий герой; интерьеры и зал Машины не показаны | готово | | Tiled-импорт | не задействован (дока + тест есть) | резерв | | EventBus | `combat:hurt/attack/playerHit`, `quest:flower` | готово | | GameState (флаги/вары) | прогресс квеста, hp/kills/motes/deaths; сериализация в сейвы | готово | | SaveManager (слоты) | autosave (Esc) + 3 слота, `SaveSlotsScene` | готово | | Settings + onChange | громкости master/ambience/sfx, `SettingsScene` | готово | -| AudioManager (шины) | амбиент локаций с кроссфейдом (луга — воздушный шум 250–1800 Гц, без «прибоя»), sfx боя/шагов/UI | готово | +| AudioManager (шины) | амбиент локаций с кроссфейдом (луга — тихий «дыхательный» ветер: мягкий низкий шум 120–600 Гц с порывами, шуршание травы, скрипы деревьев и далёкий звон Звенца), sfx боя/шагов/UI | готово | | Tween + easing | кат-сцены, лерпы освещения; `backOut` для pop-эффектов | готово | | FxLayer + пресеты (`render/fx/`) | кольца резонанса, всплывающие тосты, растворения трупов/интерактивов, хит-флэши (герой и враги), мотыли над пеплом (`emberPreset`), частицы ударов/смертей | готово | | Particles (атмосфера + burst) | пепел лугов, туман прудов, удары/смерти сгустков | готово | diff --git a/docs/plan.md b/docs/plan.md index 0cb5a6f..1baae3f 100644 --- a/docs/plan.md +++ b/docs/plan.md @@ -36,6 +36,7 @@ | 15 | Уход от кликов: фикс радиуса взаимодействия (евклидова линейка вместо проекционной), ходьба WASD/стик/джойстик, взаимодействие кнопкой действия E/A в радиусе, подпись `[E]`, удаление клик-роутинга (`InteractRouting.ts`), мост `scene:walk`/`scene:approach` + переписывание чеков и смоуков | ✅ сделано (2026-09-08): C1 fde88b6, C2 50cfc15, C3, C4; тач-кнопки действий — позже (джойстик даёт только движение) | | 16 | Переделка по фидбеку после игры: свет заново («тьма с прорезями»), ветер лугов, квестовая ясность (HUD-трекер, тосты, направления, журнал), баги UI (флип side-анимации, подложка диалога, переносы шрифтов) | ✅ сделано (2026-09-08): L1 920d0b0 (движок: RT-карта силы тьмы, erase-прорези, dirty-bake, day fast-path), L2 93491b7 (солнечный день, `duskColor` золотого часа, тюнинг радиусов/арт), L3 64e5ce8 (ветер: воздушная полоса 250–1800 Гц вместо «прибоя»), L4 64efcf5 (`questTracker` в HUD, тост «Тон (N/3)», направления в квестах/диалогах, журнал активных задач, фикс вталкивания врагов в стены), L5 8490bf9 (флип side-анимации, панель диалога сразу полной высоты, wordWrap имён/кнопок/тостов) | | 17 | Второй раунд фидбека: баг мотов/сейвы/маркер NPC, свет +25% и фонарь, замах+след боя, деревья (варианты+качание+пепел), фасады домов, пепельная трава и читаемые зоны наката, амбиент день/ночь, миникарта (движок + предмет + оверлей) | ✅ сделано (2026-09-08): B1 (моты/автосейв на переходах и закрытии вкладки/маркер), B2 (лампа 2.0/1.0, спрайт фонаря, центр внизу), B3 (сектор замаха + дуга-след, `conePath` в движке), B4 7f14fb0 (3 вида крон × 2 кадра качания, осыпание пепла), B5 7ae42cf (3 фасада домов, явная расстановка в Звенце), B6 1a906e0 (трава сквозь пепел, плотнее летающий пепел, тёплый DARK_SPOT_TINT), B7 19ce175 (ночные лупы областей + ashflow, кроссфейд по `dayNightFactor`, positions-слои зон), B8 ef8d9b7+8516872 (`renderMinimap` в движке, предмет `map_scroll` у Ирвина, оверлей `MapScene`) | +| 18 | Третий раунд фидбека: свет в центре персонажа, пепел с заметной травой, изометрические объёмные дома (5 видов), валун и куст, карты внешних локаций ×2, карта мира «Низина Звенца» (композит областей), амбиент лугов заново (тихий «дыхательный» ветер + события) | ✅ сделано (2026-09-08): C1 25d2875 (свет лампы в центре тела героя), C2 6c3e23b (стебли травы в пепле заметнее, ярче, пучками), C3 9883a24 (изо-дома: две стены + двускатная крыша, 5 видов), C4 a8622f5 (валун BOULDER и куст BUSH — новые тайлы), C5 1dada11 (все внешние карты ×2, пересчёт координат контента/тулз), C6 b86b458 (карта мира — композит миниатюр областей с дорогами и подписями), C7 0dacab3 (новая фактура ветра: мягкий низкий шум с порывами, шуршание травы, скрипы и далёкий звон, тише) | Отложено: **IsoLayout как параметр игры** — `DEFAULT_ISO` в `math/iso.ts` остаётся единственной точкой входа; прокидывание конфига игры через ~15 мест движка не даёт