Example #1
0
        public IGroup CreateGroup(string name, int health, int damage, WarEffects warEffect, AttackType attack)
        {
            IWarEffect groupWarEffect = this.WarEffectFactory.CreateWarEffect(warEffect);
            IAttack groupAttack = this.AttackFactory.CreateAttack(attack);
            IGroup group = new Group(name, health, damage, groupAttack, groupWarEffect);

            return group;
        }
Example #2
0
 public IWarEffect CreateWarEffect(WarEffects warEffect)
 {
     switch (warEffect)
     {
         case WarEffects.Jihad:
             return new Jihad();
         case WarEffects.Kamikaze:
             return new Kamikaze();
         default:
             throw new InvalidWarEffectException($"{warEffect} is not a supported war effect.");
     }
 }