refactor(game): К3 — декомпозиция LocationScene, гигиена, валидация контента
Декомпозиция (1338 -> ~870 строк, сцена — оркестратор вьюх):
- systems/LocationAudio: слои/roomtone/шорохи/музыка угрозы (порядок тиков сохранён)
- systems/InteractableViews + data/assetSets: фабрики вьюх NPC/интерактивов,
  enemyTextures из данных (префикс кадров из EnemyKindDef.frames)
- systems/Atmosphere: пепел/мотыли/дымка, накат, виньетка
- systems/quest/FlowerQuest: сбор/посадка/кат-сцена сдачи
- pixelTile -> чистый resolvePixelTile + pointerToWorld в ClickRouting (+ юнит-тесты)

Хардкоды сюжета -> data: QUEST_PLANT_TILES/QUEST_TOWER_TILE/QUEST_TOWER_GREEN,
harvestTile в AreaDef (правило «цветок только в ponds»)

Гигиена: HealthBar.setHp не перерисовывает при том же hp; eps-прибытие
вместо float-равенства (PlayerController, FaunaSystem) со снапом;
agentCommand — таблица Record вместо switch на 130 строк; удалён мёртвый код
(GameLighting.addLight/removeLight, Interactables.all, SceneObjects.byKind,
VolumeKey, questTaken/questDone/inventoryItems, реэкспорт MenuScene)

Валидация контента (тихие ошибки): патрули (границы+проходимость), хазарды,
источники света (дубли id, границы, пустые, whenFlag/notFlag), requiresItem
переходов/накатов, return-правило интерьеров, аудио-ключи (ambience/theme/
слои/sfx реакций и реплик/roomtone)

Проверено: check:fast (692 теста), agent:check 16/16, smoke-act1

Co-Authored-By: Claude Code <noreply@anthropic.com>
1 parent 3fcecc2 commit 823654855372781bcb2b7302522c03c7b9e8e719
@root root authored 1 hour ago
Showing 23 changed files
View
apps/game/src/agent/SceneAgentView.ts
View
apps/game/src/data/__tests__/quests.test.ts
View
apps/game/src/data/__tests__/validate.test.ts
View
apps/game/src/data/assetSets.ts 0 → 100644
View
apps/game/src/data/locations.ts
View
apps/game/src/data/quests.ts
View
apps/game/src/data/validate.ts
View
apps/game/src/scenes/LocationScene.ts
Too large (Show diff)
View
apps/game/src/scenes/MenuScene.ts
View
apps/game/src/scenes/SettingsScene.ts
View
apps/game/src/systems/Atmosphere.ts 0 → 100644
View
apps/game/src/systems/ClickRouting.ts
View
apps/game/src/systems/InteractableViews.ts 0 → 100644
View
apps/game/src/systems/Interactables.ts
View
apps/game/src/systems/Lighting.ts
View
apps/game/src/systems/LocationAudio.ts 0 → 100644
View
apps/game/src/systems/PlayerController.ts
View
apps/game/src/systems/SceneObjects.ts
View
apps/game/src/systems/__tests__/ClickRouting.test.ts
View
apps/game/src/systems/__tests__/lighting.test.ts
View
apps/game/src/systems/combat/HealthBar.ts
View
apps/game/src/systems/fauna/FaunaSystem.ts
View
apps/game/src/systems/quest/FlowerQuest.ts 0 → 100644