Files
h-school/docs/phases/01-manager-shell.md
T

2.7 KiB

Фаза 1. Оболочка менеджера на экране школы

Зависимости

  • Фаза 0 — не обязательно технически, но логично закрыть первой

Зачем

Сейчас внутри школы только часы и кнопки скорости. Дальше туда поедут списки, а не холст. Нужен каркас панелей, чтобы следующий срез (локации, события) садился в готовые места, а не ломал вёрстку часов.

Пока нет ответа, что лежит в дереве и в ленте, фаза рисует пустые панели с подписями и сохраняет часы/паузу/скорость. Это не игра, это экран, в который игра въедет.

Советы по укладке (не задачи, пока не закрыт дизайн)

  • Выбор узла дерева на этом шаге можно держать на клиенте: сервер ещё не шлёт карту. Когда появится симуляция локаций, решить отдельно, фильтр это или OpenLocation.
  • Не слать дерево 20 раз в секунду. Часы уже едут по сокету; списки и события — когда меняются (отдельные кадры или редкий снимок). Иначе меню-карточки повторятся внутри школы.
  • Строки UI — через t(...), как остальной клиент.

Задачи

  • На экране школы три области: дерево карты, общие события, выбранная локация — плюс текущие часы и управление временем
  • Пока нет данных с сервера, панели показывают пустое состояние (не ломаются)
  • Переключение языка обновляет подписи панелей

Критерий готовности

  • Можно открыть школу и увидеть каркас менеджера рядом с работающими часами
  • Нет регрессии паузы и скоростей
  • Клиентские тесты и npm --prefix src/HSchool.Client run build проходят

Стоп

Не наполнять панели выдуманными учениками и комнатами. Наполнение идёт из defs и карты (../design/defs.md), когда закроются открытые вопросы там.