public virtual EquippableItem Copy() { EquippableItem e = new EquippableItem(); e.bonusStats = (StatsContainer)bonusStats.Copy(); // e.excludeList = excludeList; foreach (EquipmentSlot s in validSlots) { e.AddSlot(s); } return(e); }