Fix layout issues in the user interface by adjusting CSS styles for better responsiveness and accessibility. Update component structure to improve maintainability and enhance user experience across different devices.
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
# Ближайший горизонт: что видит игрок
|
||||
|
||||
Это не текущее состояние кода, а договорённости на ближайшее планирование.
|
||||
Как устроено сейчас — в [`architecture.md`](../architecture.md).
|
||||
|
||||
## Решение: не PixiJS, а менеджер на DOM
|
||||
|
||||
Внутри школы нет 2D-сцены, камеры и спрайтов. Интерфейс ближе к менеджеру, чем к классическому
|
||||
QSP: не «полотно текста + список действий», а панели.
|
||||
|
||||
Ориентир по экрану школы (после часов и паузы, которые уже есть):
|
||||
|
||||
- **Карта** — дерево локаций (tree view).
|
||||
- **Общие события** — то, что происходит в школе целиком, не привязано к выбранному узлу.
|
||||
- **Выбранная локация** — что происходит именно там.
|
||||
|
||||
Картинок локаций и портретов в этом горизонте нет; позже можно добавить, не ломая панели.
|
||||
Анимация пока только переходы панелей/списков и живые цифры (часы, счётчики). Графики —
|
||||
когда появятся числа, которые ими стоит показывать, не раньше.
|
||||
|
||||
Клиент остаётся plain DOM + CSS. `pixi.js` для этого не нужен и в этом горизонте его стоит
|
||||
убрать из зависимостей.
|
||||
|
||||
Симуляция по-прежнему на сервере: ученики и комнаты могут существовать как данные в Arch ECS,
|
||||
даже если клиент рисует строки списка, а не человечков.
|
||||
|
||||
Типы комнат, предметов и действий описываются **defs** (JSONC), конкретная школа — **картой-инстансом**.
|
||||
Подробности: [`defs.md`](defs.md). Дерево в UI — это территория → здания → этажи → помещения.
|
||||
|
||||
## Что уже зафиксировано
|
||||
|
||||
| Тема | Решение |
|
||||
| --- | --- |
|
||||
| Вид внутри школы | Менеджер: дерево + общие события + содержимое локации |
|
||||
| Рендер | DOM, не WebGL/Pixi |
|
||||
| Картинки | Нет в этом горизонте |
|
||||
| Анимация | Переходы и живые цифры |
|
||||
| Часы, пауза, скорость | Остаются; это не отменяется панелями |
|
||||
| Логика игры | Только сервер; клиент шлёт намерения и рисует то, что сказали |
|
||||
| Данные игры | Defs (типы) + карта (инстанс), см. [`defs.md`](defs.md) |
|
||||
| Дерево карты | Территория → здание → этаж → помещение; рёбра проходов — граф инстанса |
|
||||
| Редактор карты | Только при создании школы |
|
||||
| Моды | Папки на сервере, выбор в диалоге создания |
|
||||
| Поток школы | Цель: один поток и один ECS world на школу, см. [`runtime.md`](runtime.md) |
|
||||
|
||||
## Ещё не решено
|
||||
|
||||
Эти вопросы закрывают игровой срез. Карту и моды больше не блокируют.
|
||||
|
||||
1. Что такое «общее событие»: лог за смену, только текущие процессы, или новости («урок начался»)?
|
||||
2. Что видно на выбранной локации сначала: предметы (в т.ч. пусто), заготовки действий, вакансии?
|
||||
3. Выбор узла в дереве — только фильтр на клиенте или намерение на сервер?
|
||||
|
||||
Открытые вопросы по core-моду, двору и коллизиям имён — в конце [`defs.md`](defs.md).
|
||||
|
||||
## Заведомо не сейчас
|
||||
|
||||
- Портреты, арт локаций, схема этажа в пикселях.
|
||||
- Управление персонажем от первого/третьего лица.
|
||||
- Победа/кампания, пока нет даже наблюдаемого мира.
|
||||
Reference in New Issue
Block a user