public void ProcessDamage() { if (CardTypes.Contains(CardType.Planeswalker)) { for (int i = 0; i < DamageTaken; i++) { Counter loyaltyCounter = Counters.FirstOrDefault(o => o.CounterType == CounterType.Loyalty); if (loyaltyCounter != null) { _Counters.Remove(loyaltyCounter); } } if (Counters.FirstOrDefault(o => o.CounterType == CounterType.Loyalty) == null) { Destroy(); } } else if (SufferingFromDeathtouchEffect || DamageTaken >= Toughness) { Destroy(); } DamageTaken = 0; }