public KnightUnitArmourDecorator(KnightUnit knight) : base(knight) { }
/// <summary> /// Конструктор копии. /// </summary> /// <param name="prototype">Прототип создаваемого объекта.</param> public KnightUnit(KnightUnit prototype) : base(prototype.Health) { availableAmmunition = new List<Type>(prototype.AvailableAmmunition); }
public KnightUnitShieldDecorator(KnightUnit knight) : base(knight) { }
public virtual UnitKeeper MagicallyClone() { KnightUnit clone = new KnightUnit(this); return new UnitKeeper(this, null, clone); }
public override Unit CloneModifiedUnit(Int32 healthPoints) { // Копия с сохраненным здоровьем. if (healthPoints == 0) return new KnightUnit(this); // Сохраняем здоровье юнита и травмируем (лечим) его. Int32 thisHealth = this.Health; this.Health += healthPoints; // Создаем поврежденную (исцеленную) копию юнита, используя конструктор копии. KnightUnit clone = new KnightUnit(this); // Восстанавливаем здоровье прототипа. this.Health = thisHealth; return clone; }
public KnightUnitSpearDecorator(KnightUnit knight) : base(knight) { }
public KnightUnitBaseDecorator(KnightUnit knight) { this._knight = knight; }
public KnightUnitHorseDecorator(KnightUnit knight) : base(knight) { }