Files
h-school/docs/phases/07-inventory/30-apparel-defs.md
T

44 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Фаза 30. Слои и палитра
## Зависимости
- [Фаза 3](../01-shell/03-defs-map.md)
## Зачем
Каталог умеет описать одежду и ношу, не путая их с партой. Никто ещё ничего не носит.
## Задачи
- [x] Поля `ThingDef`: `layers`, `portable`, `mass`, `insulation`, `formality`, `age`, `sex`,
`colors`, `skirtLength`, `pe`. Пустые `layers` — прежняя мебель, карта не ломается
- [x] Слои — известный набор в коде (`Underwear``Accessory`), как роли. Неизвестный слой —
ошибка загрузки
- [x] `ColorDef`: id и теги (`neutral`, `bright`, `school`). Ссылка вещи на неизвестный цвет —
ошибка
- [x] Вещь с несколькими `layers` допустима (платье). Пересечение слоёв у двух надетых сразу
валидатор не проверяет — это состояние человека, не каталога
- [x] Ваниль по [`inventory.md`](../../design/07-inventory/inventory.md): бельё, носки, низы, верх,
свитер, куртка/пальто/шуба, обувь, шапка, аксессуары, платье, форма физкультуры,
портфель, учебник, телефон, бутылка
- [x] Палитра цветов и локали ru/en на все новые def
- [x] Учебник — один `ThingDef` без зашитого предмета; предмет живёт на экземпляре в фазе 31
- [x] Мебель на карте по-прежнему без `layers`; редактор не предлагает надеть стул
## Тесты, без которых фаза не закрыта
- [x] `Chair` без новых полей грузится как раньше
- [x] Платье с `layers: ["Bottom", "Top"]` проходит; неизвестный слой — ошибка
- [x] Футболка ссылается на `Red`; отсутствие `Red` в палитре — ошибка
- [x] Тест полноты локалей зелёный на новый набор
- [x] Ванильная карта и каталог предметов (мебель) не изменились по вместимости
## Критерий готовности
- Каталог `core` грузится, школы создаются, люди голые
- `dotnet test` проходит
## Стоп
Не генерировать экземпляры. Не трогать карточку и create сверх того, что уже есть.