protected override void copyExtendedProperties(ItemModel sourceItemModel) { EquipmentItemModel equipmentItemModel = sourceItemModel as EquipmentItemModel; if (equipmentItemModel == null) { throw new InvalidCastException("Invalid type."); } EquipmentType = equipmentItemModel.EquipmentType; MaxHealthBoost = equipmentItemModel.MaxHealthBoost; HealthRegenBoost = equipmentItemModel.HealthRegenBoost; MaxManaBoost = equipmentItemModel.MaxManaBoost; ArmorBoost = equipmentItemModel.ArmorBoost; SpellResistBoost = equipmentItemModel.SpellResistBoost; MeleeDamageBoost = equipmentItemModel.MeleeDamageBoost; MeleeCritBoost = equipmentItemModel.MeleeCritBoost; SpellDamageBoost = equipmentItemModel.SpellDamageBoost; SpellCritBoost = equipmentItemModel.SpellCritBoost; if (equipmentItemModel.AbilityItemModels == null) { AbilityItemModels = null; } else { AbilityItemModels = new AbilityItemModel[equipmentItemModel.AbilityItemModels.Length]; for (int i = 0; i < AbilityItemModels.Length; i++) { AbilityItemModels[i] = new AbilityItemModel(); AbilityItemModels[i].CopyFrom(equipmentItemModel.AbilityItemModels[i], true); } } }
public override ItemModel Clone() { EquipmentItemModel clone = new EquipmentItemModel(); clone.CopyFrom(this, true); return(clone); }