This integration layer bridges inventory item features with RPG stat evaluation/comparison logic.
In the package layout this corresponds to InventorySystem.RPGStats.
Keep base inventory generic, then compose RPG-specific behavior through dedicated integration modules.
This avoids overloading core inventory abstractions with RPG-only assumptions.
RpgEquipmentSlotDescriptorUtilities builds EquipmentSlotDescriptor rows with the RPG accept policies pre-wired, pairing an equipment-type key with the UXML element that renders its slot.
// One slot at a time — the natural form when iterating a name-keyed slot map:
RpgEquipmentSlotDescriptorUtilities.AppendEquipmentTypeSlot(
descriptors, "Weapon", "SlotHand", emptyIcon: swordSprite);
// Batch form — three positional lists zipped by index:
RpgEquipmentSlotDescriptorUtilities.AppendEquipmentTypeSlots(
descriptors, typeKeys, rootElementNames, emptyIcons);
// Consumable slot (requires ConsumableFeature, rejects EquipableFeature):
RpgEquipmentSlotDescriptorUtilities.AppendConsumableSlot(
descriptors, slotId: "Consumable", displayName: "Consumable",
rootElementName: "SlotPotion", emptyIcon: potionSprite);Prefer the singular AppendEquipmentTypeSlot when slots come from your own mapping (type key → element name → icon) — the positional batch form silently remaps every slot if its three lists ever drift out of order. RpgEquipmentSlotLayoutBuilder offers the same calls in builder form when you want to compose rows before committing them.
AttributeDataOlder projects used a type like AttributeData on equipment definitions. That type is gone. Use AttributeEffect from CupkekGames.RPGStats (a list of AttributeEffectEntry: CatalogKey + additive + multiplier). Item equipment in samples is authored on EquipableFeature (Effects field), not a separate EquipmentDefinition type—align your EquipmentDefinition (if you keep it) with the same AttributeEffect shape or store stats only on EquipableFeature.
For computed stat bags (combat, UI snapshots), use AttributeSet and SetValue per attribute key—see RPG Stats.
Settings
Theme
Light
Contrast
Material
Dark
Dim
Material Dark
System
Sidebar(Light & Contrast only)
Font Family
DM Sans
Wix
Inclusive Sans
AR One Sans
Direction