From 8d29f7b3cedac4b187d93da5f0fafe1a897d6917 Mon Sep 17 00:00:00 2001 From: Hellfish Date: Tue, 23 Aug 2011 20:45:16 +0000 Subject: [PATCH] *Added Torpor Orb. *Triggered Abilities no longer trigger AbilityCast. --- .gitattributes | 1 + res/cardsfolder/t/torpor_orb.txt | 6 ++++++ src/main/java/forge/MagicStack.java | 2 +- .../java/forge/card/trigger/TriggerHandler.java | 17 ++++++++++++++++- 4 files changed, 24 insertions(+), 2 deletions(-) create mode 100644 res/cardsfolder/t/torpor_orb.txt diff --git a/.gitattributes b/.gitattributes index 7b3cdadbbed..e618924cc52 100644 --- a/.gitattributes +++ b/.gitattributes @@ -7903,6 +7903,7 @@ res/cardsfolder/t/tormented_angel.txt svneol=native#text/plain res/cardsfolder/t/tormented_soul.txt svneol=native#text/plain res/cardsfolder/t/tormods_crypt.txt svneol=native#text/plain res/cardsfolder/t/torpor_dust.txt svneol=native#text/plain +res/cardsfolder/t/torpor_orb.txt -text res/cardsfolder/t/torrent_of_fire.txt svneol=native#text/plain res/cardsfolder/t/torsten_von_ursus.txt svneol=native#text/plain res/cardsfolder/t/tortoise_formation.txt svneol=native#text/plain diff --git a/res/cardsfolder/t/torpor_orb.txt b/res/cardsfolder/t/torpor_orb.txt new file mode 100644 index 00000000000..ab77b8d636c --- /dev/null +++ b/res/cardsfolder/t/torpor_orb.txt @@ -0,0 +1,6 @@ +Name:Torpor Orb +ManaCost:2 +Types:Artifact +Text:Creatures entering the battlefield don't cause abilities to trigger. +SVar:Rarity:Rare +End \ No newline at end of file diff --git a/src/main/java/forge/MagicStack.java b/src/main/java/forge/MagicStack.java index c84c30ddff6..c669d266e72 100644 --- a/src/main/java/forge/MagicStack.java +++ b/src/main/java/forge/MagicStack.java @@ -535,7 +535,7 @@ public class MagicStack extends MyObservable { } //Run AbilityCast triggers - if (sp.isAbility()) { + if (sp.isAbility() && !sp.isTrigger()) { AllZone.getTriggerHandler().runTrigger("AbilityCast", runParams); } diff --git a/src/main/java/forge/card/trigger/TriggerHandler.java b/src/main/java/forge/card/trigger/TriggerHandler.java index ff728bebfd5..f48434d3021 100644 --- a/src/main/java/forge/card/trigger/TriggerHandler.java +++ b/src/main/java/forge/card/trigger/TriggerHandler.java @@ -336,7 +336,22 @@ public class TriggerHandler { { return false; //Test failed. } - + + //Torpor Orb check + CardList torporOrbs = AllZoneUtil.getCardsInPlay("Torpor Orb"); + + if(torporOrbs.size() != 0 && mode.equals("ChangesZone") && regtrig.getMapParams().get("ValidCard").contains("Creature")) + { + return false; + } + if(torporOrbs.size() != 0 && regtrig.getMapParams().containsKey("Destination")) + { + if(!regtrig.getMapParams().get("Destination").equals("Battlefield")) + { + return false; + } + } + HashMap trigParams = regtrig.getMapParams(); final Player[] decider = new Player[1];