client: require server item schema and drive property UI from metadata
This commit is contained in:
@@ -53,10 +53,9 @@ This is a behavior guide for packet semantics beyond raw schemas.
|
||||
- `itemTypes[].tooltip`: item-level tooltip/help text
|
||||
- `itemTypes[].editableProperties`: editable property keys by item type
|
||||
- `itemTypes[].propertyOptions`: menu options for property keys (for example clock `timeZone`)
|
||||
- `itemTypes[].propertyMetadata`: property-level metadata (`valueType`, optional `range`, optional `tooltip`)
|
||||
- `itemTypes[].propertyMetadata`: property-level metadata (`valueType`, optional `range`, optional `tooltip`, optional `maxLength`, optional `visibleWhen`)
|
||||
- `itemTypes[].globalProperties`: non-editable global values (`useSound`, `emitSound`, `useCooldownMs`, `emitRange`, `directional`, `emitSoundSpeed`, `emitSoundTempo`)
|
||||
|
||||
- Clients keep local fallback defaults but should prefer server-provided metadata when present.
|
||||
- Client item UI requires this metadata from the server; there is no fallback item definition map.
|
||||
|
||||
## Validation Boundaries
|
||||
|
||||
|
||||
Reference in New Issue
Block a user