protected override void ResolveEffect() { if (_card != null) { _card.Value.PutToHand(); return; } foreach (var target in ValidEffectTargets) { target.Card().PutToHand(); } if (_returnOwningCard && ValidEffectTargets.None(x => x == Source.OwningCard)) { Source.OwningCard.PutToHandFrom(_owningCardZone); } if (_discard > 0) { Enqueue(new Decisions.DiscardCards( Target.Card().Controller, p => p.Count = _discard)); } }
protected override void ResolveEffect() { var targets = ValidEffectTargets.ToList(); var first = targets[0].Card(); var second = targets[1].Card(); first.DealDamageTo(_selector(first), second, isCombat: true); second.DealDamageTo(_selector(second), first, isCombat: true); }
protected override void ResolveEffect() { var targets = ValidEffectTargets.ToList(); Source.OwningCard.DealDamageTo( _amount, (IDamageable)targets[0], isCombat: false); targets[1].Card().Tap(); }