Cases and colours
The phone comes in fourteen colours, and your city decides whether a colour is a preference or a thing somebody is carrying. That is one line:
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}Off โ a colour
Section titled โOff โ a colourโSettings has a Case page with fourteen swatches. Pick one, it is yours, the phone in your hand changes to match. Nothing to buy, nothing to lose.
On โ an object
Section titled โOn โ an objectโThree rules follow, and they are the whole difference:
- A colour with no item in this city cannot be worn at all. Take a line out of
Itemsand that case stops existing โ not hidden, gone. - The server decides. Settings asks and the swatch moves when the answer comes back, which is also what happens when somebody uses the case item instead. Both ways end at the same push, so the screen and the hand cannot disagree about which of them is right.
- The case has to still be in the pocket. The choice is remembered and whether it counts is asked again, so selling the case takes the colour with it at the next boot. A case that keeps working after it has been sold is not an item, it is a setting with an item-shaped receipt.
The case is never used up. It is the case; you have it; the phone wears it.
It is kept against the phone rather than the person โ in item mode the identifier is the device โ so a phone that changes hands arrives wearing the case it was sold with, and somebody with two phones can have a different colour on each.
The screen
Section titled โThe screenโAll fourteen are drawn either way. The ones that are not in the pocket are dimmed and say Not in your pocket rather than only looking pale: a case nobody has ever seen is a case nobody will look for, and a greyed thing with no words looks broken rather than unavailable.
The items
Section titled โThe itemsโThe fourteen are the fourteen mic_phone_props carries, and the icons are in the resource. For ox_inventory:
['phone_case_blue'] = { label = 'Blue Case', weight = 20, stack = false },Where they are sold is your cityโs business โ the phone does not put a shop anywhere.