public void Equip(InventoryItem inventoryItem) { string equipmentType = inventoryItem.definition.GetStaticProperty("equipmentType").AsString(); if (items.IsSlotSet(equipmentType)) { UnEquip(items.Get(equipmentType)); } items.Set(equipmentType, inventoryItem); OnEquip?.Invoke(inventoryItem); }