Enhance school day structure and decision-making for lunch breaks
ci / server (push) Failing after 3m43s
ci / client (push) Successful in 15s

- Updated `ai.md` to clarify the mechanics of hunger restoration and the importance of lunch breaks in the school schedule.
- Revised `schedule.md` to detail the new lunch break structure, allowing for separate sittings for different grade levels.
- Enhanced `Decision.cs` and `DecisionPlanner.cs` to incorporate logic for lunch breaks, ensuring that students only leave lessons during their designated lunch windows.
- Updated `DayFrameDef` and related classes to support multiple lunch breaks and validate their configurations.
- Adjusted tests to validate the new decision-making logic regarding lunch breaks and hunger management, ensuring robust functionality.
- Improved localization strings to reflect changes in the school day structure and lunch functionalities.
This commit is contained in:
Leonid Pershin
2026-08-19 23:17:16 +03:00
parent a441ed9763
commit 5eabc90d53
33 changed files with 831 additions and 404 deletions
+7 -5
View File
@@ -11,9 +11,12 @@ QSP: не «полотно текста + список действий», а п
Ориентир по экрану школы (после часов и паузы, которые уже есть):
- **Карта** — дерево локаций (tree view).
- **Общие события** — то, что происходит в школе целиком, не привязано к выбранному узлу.
- **Выбранная локация** — что происходит именно там.
Отдельной панели общих событий нет: пока ленты событий не существует, постоянно пустая треть
экрана только мешала, и место отдано вкладкам «Карта» и «Люди». Появится лента — вернётся и
панель; решение принято в фазе 8, здесь оно записано.
Картинок локаций и портретов в этом горизонте нет; позже можно добавить, не ломая панели.
Анимация пока только переходы панелей/списков и живые цифры (часы, счётчики). Графики —
когда появятся числа, которые ими стоит показывать, не раньше.
@@ -30,10 +33,9 @@ QSP: не «полотно текста + список действий», а п
Это и реализуем. Нового геймплея сверх этого не закладываем.
**Экран школы.** Часы, пауза, скорость. Три панели:
**Экран школы.** Часы, пауза, скорость. Две панели:
- дерево карты;
- общие события — **пусто** (заголовок и пустое состояние);
- дерево карты (позже к нему вкладкой встанут «Люди»);
- выбранная локация (комната, этаж, корпус **или двор**): имя, предметы, персонажи (пусто),
действия на месте (пусто), должности. Секции те же; где данных нет — пустое состояние.
@@ -49,7 +51,7 @@ QSP: не «полотно текста + список действий», а п
| Тема | Решение |
| --- | --- |
| Вид внутри школы | Менеджер: дерево + общие события + содержимое локации |
| Вид внутри школы | Менеджер: дерево (вкладкой с «Людьми») + содержимое локации |
| Рендер | DOM, не WebGL/Pixi |
| Картинки | Нет в этом горизонте |
| Анимация | Переходы и живые цифры |