示例#1
0
        public void Deactivate()
        {
            _isActive.Value = false;

            foreach (var modifier in _modifiers.ToList())
            {
                RemoveModifier(modifier);
            }
        }
示例#2
0
        public bool RedirectDamage(Damage damage, ITarget target)
        {
            foreach (var redirection in _redirections.ToList())
            {
                if (redirection.RedirectDamage(damage, target))
                {
                    return(true);
                }
            }

            return(false);
        }
示例#3
0
 public void DetachAttachments()
 {
     foreach (var attachedCard in _attachments.ToList())
     {
         if (attachedCard.Is().Aura)
         {
             // auras are sacrificed
             attachedCard.Sacrifice();
         }
         else
         {
             Detach(attachedCard);
         }
     }
 }