I would really like my game will probably feature some sort of made up creature (as soon as I can find the right asset pack) as the main character. They will probably wear multiple rings or charms or similar rather than traditional weapon, armor, etc. But even with a human, games like Dragon Age for example allow the character to wear 2 rings. The dictionary seems incompatible with this. I also think that the “stackable” equipment type also would not be a great fit for this experience.
My idea was to create my own equipment script and more or less “hard code” it. e.g. 3 rings, 1 headgear piece, 2 charms. I think the interface methods would stay (almost) identical but the logic and backing store would just be different to accommodate what I want.
EDIT: I am thinking there will be some similarity of my Equipment with Inventory. An array of EquipmentSlot, which are each structs containing the EquipableItem and the EquipLocation. EquipmentSlotUI will be like InventorySlotUI in that it will have an index and map back to the Equipment script. None of the equipment slots will be stackable (though an individual Inventory item might be stackable in the inventory). It’s basically an inventory where each slot can only take a single type of item, but there may be multiple slots that can each take a common type.
Am I thinking about this straight?