Перейти к содержимому

Чехлы и цвета

Телефон выпускается в четырнадцати цветах, и ваш город решает, будет ли цвет предпочтением или вещью, которую кто-то носит с собой. Это одна строка:

Config.Prop.Fold.Cases = {
Enabled = false,
Items = { black = 'phone_case_black', blue = 'phone_case_blue', ... }, -- fourteen
OnUse = true, -- putting one on by using the item, for people who never open Settings
}

В Настройках есть страница «Чехол» с четырнадцатью образцами. Выберите один — он ваш, а телефон у вас в руке меняется под него. Ничего не нужно покупать, ничего нельзя потерять.

Дальше действуют три правила, и в них вся разница:

  • Цвет, для которого в этом городе нет предмета, носить нельзя вообще. Уберите строку из Items — и этот чехол перестанет существовать: не скрыт, а исчез.
  • Решает сервер. Настройки спрашивают, и образец сдвигается, когда приходит ответ; то же самое происходит, когда человек использует предмет-чехол. Оба пути заканчиваются одним и тем же пушем, так что экран и рука не могут разойтись в том, кто из них прав.
  • Чехол должен всё ещё лежать в кармане. Выбор запоминается, а вопрос, засчитывается ли он, задаётся снова, поэтому продажа чехла уносит с собой и цвет при следующей загрузке. Чехол, продолжающий работать после продажи, — это не предмет, а настройка с чеком в форме предмета.

Чехол никогда не расходуется. Это чехол; он у вас есть; телефон его носит.

Он хранится за телефоном, а не за человеком — в режиме предметов идентификатор и есть устройство, — поэтому телефон, переходящий из рук в руки, приходит в том чехле, с которым был продан, а у человека с двумя телефонами на каждом может быть свой цвет.

Все четырнадцать отрисовываются в любом случае. Те, которых нет в кармане, затемнены и подписаны Нет в кармане, а не просто выглядят бледными: чехол, которого никто никогда не видел, — это чехол, который никто не станет искать, а серая вещь без слов выглядит сломанной, а не недоступной.

Четырнадцать — это те самые четырнадцать, которые несёт mic_phone_props, а иконки лежат в ресурсе. Для ox_inventory:

['phone_case_blue'] = { label = 'Blue Case', weight = 20, stack = false },

Где их продают — дело вашего города: телефон не ставит магазин нигде.