示例#1
0
        public virtual void Attack(IBattlefieldEntity enemy)
        {
            if (enemy == null) throw new ArgumentNullException("enemy");

            if (enemy.IsAlive && this.weapon != null)
            {
                enemy.Health -= this.weapon.CalculateDamage();
                enemy.WasAttacked = true;
            }
        }
示例#2
0
 private void StubCombatantAttacksOpponent(IBattlefieldEntity enemy)
 {
     enemy.Health--;
 }
示例#3
0
 public virtual void Attack(IBattlefieldEntity enemy)
 {
     this.HasAttacked = true;
     enemy.Health--;
 }
示例#4
0
文件: Army.cs 项目: neraath/YeOldeTdd
        public void Attack(IBattlefieldEntity enemy)
        {
            if (enemy == null) throw new ArgumentNullException("enemy");
            if (this.combatantFactory == null) throw new InvalidOperationException("No combatant factory to create combatants.");

            // Select a random combatant.
            ICombatant randomCombatant = this.combatantFactory.CreateRandomCombatant("My Random Combatant");
            randomCombatant.Attack(enemy);
        }