public void Deactivate() { _isActive.Value = false; foreach (var modifier in _modifiers.ToList()) { RemoveModifier(modifier); } }
public bool RedirectDamage(Damage damage, ITarget target) { foreach (var redirection in _redirections.ToList()) { if (redirection.RedirectDamage(damage, target)) { return(true); } } return(false); }
public void DetachAttachments() { foreach (var attachedCard in _attachments.ToList()) { if (attachedCard.Is().Aura) { // auras are sacrificed attachedCard.Sacrifice(); } else { Detach(attachedCard); } } }