Example #1
0
        private void CounterAttack(string id, IEnumerable <Combatant> targets, bool resetTurnTimer)
        {
            if (!Attacks.ContainsKey(id))
            {
                throw new GameDataException("Enemy '{0}' used undefined attack '{1}'", Name, id);
            }

            Attacks[id].Use(this, targets, new AbilityModifiers {
                CounterAttack = true, ResetTurnTimer = false
            });
        }
Example #2
0
        public void AddAttack(CharacterEnums.TypeAttack attack, int damage)
        {
            if (damage <= 0)
            {
                throw new ArgumentOutOfRangeException("Damage must be bigger than zero.");
            }

            if (!Attacks.ContainsKey(attack))
            {
                Attacks.Add(attack, damage);
            }
            else
            {
                Attacks[attack] = damage;
            }
        }