From cbb207b73dda1fd183521ca394f6d168b463569d Mon Sep 17 00:00:00 2001 From: jendave Date: Sat, 6 Aug 2011 20:18:08 +0000 Subject: [PATCH] convert AF_Destroy to use Defined for Resolve. It was already using Defined for stackDescription. Add a note to Parallax Dementia. --- res/cardsfolder/parallax_dementia.txt | 1 + src/forge/card/abilityFactory/AbilityFactory_Destroy.java | 7 ++----- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/res/cardsfolder/parallax_dementia.txt b/res/cardsfolder/parallax_dementia.txt index e0dea7e0131..f116f2c4c9e 100644 --- a/res/cardsfolder/parallax_dementia.txt +++ b/res/cardsfolder/parallax_dementia.txt @@ -5,6 +5,7 @@ Text:no text K:Enchant creature K:Fading:1 K:enPump:+3/+2 +# The trigger part of this will not work until an issue with Auras and LastKnownInfo is sorted out. TODO T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME leaves the battlefield, destroy enchanted creature. That creature can't be regenerated. SVar:TrigDestroy:AB$Destroy | Cost$ 0 | Defined$ Enchanted | NoRegen$ True SVar:RemAIDeck:True diff --git a/src/forge/card/abilityFactory/AbilityFactory_Destroy.java b/src/forge/card/abilityFactory/AbilityFactory_Destroy.java index 41a9fabb94a..c1d0598a175 100644 --- a/src/forge/card/abilityFactory/AbilityFactory_Destroy.java +++ b/src/forge/card/abilityFactory/AbilityFactory_Destroy.java @@ -355,12 +355,9 @@ public class AbilityFactory_Destroy { if (tgt != null) tgtCards = tgt.getTargetCards(); else{ - tgtCards = new ArrayList(); - tgtCards.add(card); + tgtCards = AbilityFactory.getDefinedCards(sa.getSourceCard(), af.getMapParams().get("Defined"), sa); } - Card firstTarget = tgtCards.get(0); - for(Card tgtC : tgtCards){ if(AllZone.GameAction.isCardInPlay(tgtC) && (tgt == null || CardFactoryUtil.canTarget(card, tgtC))) { if(noRegen) @@ -376,7 +373,7 @@ public class AbilityFactory_Destroy { abSub.resolve(); } else - CardFactoryUtil.doDrawBack(DrawBack, 0, card.getController(), card.getController().getOpponent(), card.getController(), card, firstTarget, sa); + CardFactoryUtil.doDrawBack(DrawBack, 0, card.getController(), card.getController().getOpponent(), card.getController(), card, tgtCards.get(0), sa); } }