Экономика: EconomyConfig, модуль Населения, отладочная панель DEV

This commit is contained in:
2026-10-27 18:04:27 +03:00
parent 679405b288
commit 256a8fbc3f
28 changed files with 1096 additions and 13 deletions
+6 -2
View File
@@ -37,6 +37,7 @@ SaveRegistry.Register(myModule); // при запуске модуля
| `world` | Глобальный мир |
| `circle` | Круг (простые строки, не JSON — модуль без Unity) |
| `army` | Армия (простые строки: `troops=…`, `march=…`) |
| `population` | Население (простые строки: `civilians=…`, `lastTick=…` и др.) |
## Формат файла
@@ -70,7 +71,8 @@ SaveRegistry.Register(myModule); // при запуске модуля
- **Поселение** — Ратуша 1 уровня, постройки убраны, участки свободны;
- **Мир** — все походы отменены;
- **Круг** — игрок ни в каком Круге, его Круги распущены;
- **Армия** — войск и походов нет.
- **Армия** — войск и походов нет;
- **Население** — стартовый город (270 жителей). После сброса `App/GameModules` выдаёт стартовое войско и ресурсы из `EconomyConfig`.
Новый модуль с данными обязан реализовать `ResetState()`, иначе он не скомпилируется: метод входит в контракт.
@@ -80,7 +82,8 @@ SaveRegistry.Register(myModule); // при запуске модуля
- `GameLoadedEvent` — после загрузки (и когда файла сохранения нет — загрузка завершена, новая игра);
- `GameSavedEvent` — после записи;
- `GameResetEvent` — после сброса сохранений.
- `GameResetEvent` — после сброса сохранений;
- `NewGameStartedEvent` — `GameBootstrap`: файла сохранения нет, первая игра на устройстве.
**Слушает:** ничего.
@@ -101,6 +104,7 @@ SaveRegistry.Register(myModule); // при запуске модуля
| Дата | Кто | Что |
| --- | --- | --- |
| 26.10.2026 | Claude | Новая секция `population` (модуль Населения). `GameBootstrap` публикует `NewGameStartedEvent`, если файла нет. |
| 23.10.2026 | Claude | Новая секция `army` (модуль Армии). `GameLoadedEvent` публикуется и без файла сохранения. |
| 19.10.2026 | Claude | Новая секция `circle` (модуль Круга). |
| 19.10.2026 | Claude | Сброс сохранений: `ISaveSystem.ResetAll()`, `ResetState()` у модулей, `GameResetEvent`, меню редактора. Кнопка в Настройках теперь сбрасывает и походы, и память Поселения. |