Ejemplo n.º 1
0
        public override Component Copy()
        {
            var equipment = new EquipmentComponent(new List <string>(_slots));

            foreach (var equippedItem in _equippedItems)
            {
                equipment._equippedItems.Add(equippedItem.Key, equippedItem.Value.Copy());
            }

            if (ItemEquipped != null)
            {
                equipment.ItemEquipped = (ComponentEventHandler <EquipmentComponent, EventArgs <string, Entity> >)ItemEquipped.Clone();
            }
            if (ItemUnequipped != null)
            {
                equipment.ItemUnequipped = (ComponentEventHandler <EquipmentComponent, EventArgs <string, Entity> >)ItemUnequipped.Clone();
            }

            return(equipment);
        }