Esempio n. 1
0
        public void Start(IAnimal victim)
        {
            _victim = victim;
            var defence = _victim.Upgrades.Where(x =>
                                                 x.UpgradeType == UpgradeType.Mimicry || x.UpgradeType == UpgradeType.Running ||
                                                 x.UpgradeType == UpgradeType.TailLoss).ToList();

            if (defence.Count > 0)
            {
                DefenceCardsNotUsed = defence.ToDictionary(item => item, item => true);
                DefenceChoose?.Invoke(this, new DefenceChooseEventArgs(this, DefenceCardsNotUsed));
            }
            else
            {
                if (victim.Upgrades.Any(x => x.UpgradeType == UpgradeType.Poisonous))
                {
                    Attacker.Poisoned = true;
                }
                FightOver?.Invoke(this, new FightOverEventArgs(this, true));
            }
        }