diff --git a/res/cardsfolder/journey_to_nowhere.txt b/res/cardsfolder/journey_to_nowhere.txt index 905f6a1c5fe..e70e11ec022 100644 --- a/res/cardsfolder/journey_to_nowhere.txt +++ b/res/cardsfolder/journey_to_nowhere.txt @@ -4,8 +4,8 @@ Types:Enchantment Text:no text T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigExile | TriggerDescription$ When CARDNAME enters the battlefield, exile target creature. T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigReturn | TriggerDescription$ When CARDNAME leaves the battlefield, return the exiled card to the battlefield under its owner's control. -SVar:TrigExile:AB$ChangeZone | Cost$ 0 | TargetMin$ 1 | ValidTgts$ Creature | TgtPrompt$ Select target creature | RememberTargets$ True | ForgetOtherTargets$ True | Origin$ Battlefield | Destination$ Exile -SVar:TrigReturn:AB$ChangeZone | Cost$ 0 | Defined$ Remembered | Origin$ Exile | Destination$ Battlefield +SVar:TrigExile:DB$ChangeZone | Cost$ 0 | TargetMin$ 1 | ValidTgts$ Creature | TgtPrompt$ Select target creature | RememberTargets$ True | ForgetOtherTargets$ True | Origin$ Battlefield | Destination$ Exile +SVar:TrigReturn:DB$ChangeZone | Cost$ 0 | Defined$ Remembered | Origin$ Exile | Destination$ Battlefield SVar:PlayMain1:TRUE SVar:Rarity:Common SVar:Picture:http://www.wizards.com/global/images/magic/general/journey_to_nowhere.jpg diff --git a/res/cardsfolder/oblivion_ring.txt b/res/cardsfolder/oblivion_ring.txt index eaf4e65860a..f9e0f0f3f9e 100644 --- a/res/cardsfolder/oblivion_ring.txt +++ b/res/cardsfolder/oblivion_ring.txt @@ -4,8 +4,8 @@ Types:Enchantment Text:no text T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigExile | TriggerDescription$ When CARDNAME enters the battlefield, exile another target nonland permanent. T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigReturn | TriggerDescription$ When CARDNAME leaves the battlefield, return the exiled card to the battlefield under its owner's control. -SVar:TrigExile:AB$ChangeZone | Cost$ 0 | TargetMin$ 1 | ValidTgts$ Permanent.nonLand+Other | TgtPrompt$ Choose target nonland permanent other than Oblivion Ring | RememberTargets$ True | ForgetOtherTargets$ True | Origin$ Battlefield | Destination$ Exile -SVar:TrigReturn:AB$ChangeZone | Cost$ 0 | Defined$ Remembered | Origin$ Exile | Destination$ Battlefield +SVar:TrigExile:DB$ChangeZone | Cost$ 0 | TargetMin$ 1 | IsCurse$ True | ValidTgts$ Permanent.nonLand+Other | TgtPrompt$ Choose target nonland permanent other than Oblivion Ring | RememberTargets$ True | ForgetOtherTargets$ True | Origin$ Battlefield | Destination$ Exile +SVar:TrigReturn:DB$ChangeZone | Cost$ 0 | Defined$ Remembered | Origin$ Exile | Destination$ Battlefield SVar:PlayMain1:TRUE SVar:Rarity:Common SVar:Picture:http://resources.wizards.com/magic/cards/lrw/en/card139414.jpg diff --git a/src/forge/card/abilityFactory/AbilityFactory_ChangeZone.java b/src/forge/card/abilityFactory/AbilityFactory_ChangeZone.java index 307e49a53cd..cce50c30863 100644 --- a/src/forge/card/abilityFactory/AbilityFactory_ChangeZone.java +++ b/src/forge/card/abilityFactory/AbilityFactory_ChangeZone.java @@ -913,6 +913,9 @@ public class AbilityFactory_ChangeZone { } private static boolean changeKnownUnpreferredTarget(AbilityFactory af, SpellAbility sa, boolean mandatory){ + if (!mandatory) + return false; + HashMap params = af.getMapParams(); Card source = sa.getSourceCard(); String origin = params.get("Origin"); @@ -922,6 +925,7 @@ public class AbilityFactory_ChangeZone { CardList list = AllZoneUtil.getCardsInZone(origin); list = list.getValidCards(tgt.getValidTgts(), AllZone.ComputerPlayer, source); + // Narrow down the list: if (origin.equals("Battlefield")){ // filter out untargetables