2.8 KiB
2.8 KiB
Фаза 32. Погода и тепло
Зависимости
Зачем
На улице есть температура и осадки. Человек может мёрзнуть. Часы это показывают.
Задачи
ClimatePresetDefполучает рабочие числа: нормы по месяцам, разброс дня, осадки- Школа считает улицу из пресета + сида + даты/часа; не каждый тик, а когда меняется надпись или это сдвинет тепло
- В здании теплее улицы за счёт стен, без техника ещё не комфорт (комфорт — фаза 33)
- Двор и крыльцо — улица
- Нужда
Warmth: декей от разницы «утепление одежды vs температура места»; вне школы восстанавливается, как сон - Черты теплолюбивый / холодолюбивый: поле смещения комфорта на
TraitDef, взаимно несовместимы - Кадр часов: температура (десятые доли °C,
i16) и осадки (u8). Версия протокола +1.ProtocolCodec.cs,protocol.ts,docs/protocol.mdв одном коммите - Клиент рисует погоду у даты; не считает её из месяца
- Пропуск пустого времени выставляет погоду утра, не вчерашнюю
Тесты, без которых фаза не закрыта
- Тот же пресет, сид и timestamp → та же температура и осадки
- Январь холоднее июля на ванильном пресете
- Ниже нуля осадки — снег, не дождь (если пресет вообще дал осадки)
- На морозе без верхней одежды тепло падает; дома за ночь возвращается
- Кадр часов круглый трип и байтовая раскладка на обеих сторонах
- Клиент с старой версией протокола отваливается Hello, как обычно
Критерий готовности
- У часов видно «−5 °C, снег» зимним утром
- Полоска тепла на карточке шевелится
dotnet testиnpm test/buildпроходят
Стоп
Не нанимать техника. Не переодевать по погоде — замёрзший ещё терпит. Не штрафовать урок.