- Keep game/campaign audio assets referenced (no prune)
- Flush pending project save on quit/switch/export to avoid losing campaignAudios
- Control: prevent game music restarts on scene changes; allow always-on controls; handle autoplay-after-scene-audio
- Editor: reduce ReactFlow churn with stable scene card map; lazy/async image decode
- Add contract/unit tests and update test script
Made-with: Cursor
- Поле: вода (сплошная заливка по штриху, превью кистью), туман/огонь/дождь без изменений логики.
- Действия: облако яда (частицы, круглая текстура, звук oblako-yada.mp3, длительность как у трека), луч света и заморозка со звуками из public/.
- Пульт: инструменты воды и яда, синхрон SFX, тесты панели и ластика.
- Окно управления: дочернее от окна просмотра (Z-order).
- Типы эффектов, effectsStore prune, hit-test ластика.
Made-with: Cursor