public void Change(IEquippable <Item> itemEquipped, IEquippable <Item> itemInBackpack, IHero hero) { IEquippable <Item> freeSlot; freeSlot = itemInBackpack; itemInBackpack = itemEquipped; hero.Equippment[freeSlot.SlotCompatibility] = null; hero.Equip(freeSlot); // itemEquipped = freeSlot; }