diff --git a/res/cardsfolder/c/curse_of_the_cabal.txt b/res/cardsfolder/c/curse_of_the_cabal.txt index a5f2489c8dc..4319ae9bdaf 100644 --- a/res/cardsfolder/c/curse_of_the_cabal.txt +++ b/res/cardsfolder/c/curse_of_the_cabal.txt @@ -3,7 +3,7 @@ ManaCost:9 B Types:Sorcery Text:no text K:Suspend:2:2 B B -T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player | Execute$ TrigCursePayUP | TriggerZones$ Exile | IsPresent$ Card.counters_GE1_TIME+Self | PresentZone$ Exile | TriggerDescription$ At the beginning of each player's upkeep, if CARDNAME is suspended, that player may sacrifice a permanent. If he or she does, put two time counters on CARDNAME. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ Player | Execute$ TrigCursePayUP | TriggerZones$ Exile | IsPresent$ Card.suspended+Self | PresentZone$ Exile | TriggerDescription$ At the beginning of each player's upkeep, if CARDNAME is suspended, that player may sacrifice a permanent. If he or she does, put two time counters on CARDNAME. A:SP$ Sacrifice | Cost$ 9 B | ValidTgts$ Player | TgtPrompt$ Select target player | Amount$ CurseX | SacValid$ Permanent | References$ CurseX | SpellDescription$ Target player sacrifices half the permanents he or she controls, rounded down. SVar:TrigCursePayUP:AB$ Sacrifice | Cost$ 0 | Amount$ 1 | SacValid$ Permanent | Defined$ TriggeredPlayer | Optional$ True | RememberSacrificed$ True | SubAbility$ DBCursePutCounter SVar:DBCursePutCounter:DB$ PutCounter | CounterType$ TIME | CounterNum$ 2 | ConditionCheckSVar$ CurseY | ConditionSVarCompare$ GT0 | SubAbility$ DBCurseCleanup | References$ CurseY diff --git a/res/cardsfolder/d/deep_sea_kraken.txt b/res/cardsfolder/d/deep_sea_kraken.txt index 9d569745ead..c43cde47f95 100644 --- a/res/cardsfolder/d/deep_sea_kraken.txt +++ b/res/cardsfolder/d/deep_sea_kraken.txt @@ -5,7 +5,7 @@ Text:no text PT:6/6 K:Unblockable K:Suspend:9:2 U -T:Mode$ SpellCast | ValidCard$ Card | ValidActivatingPlayer$ Opponent | Execute$ TrigRemoveCounter | IsPresent$ Card.counters_GE1_TIME+Self | PresentZone$ Exile | TriggerDescription$ Whenever an opponent casts a spell, if CARDNAME is suspended, remove a time counter from it. +T:Mode$ SpellCast | ValidCard$ Card | ValidActivatingPlayer$ Opponent | Execute$ TrigRemoveCounter | IsPresent$ Card.suspended | PresentZone$ Exile | TriggerDescription$ Whenever an opponent casts a spell, if CARDNAME is suspended, remove a time counter from it. SVar:TrigRemoveCounter:AB$RemoveCounter | Cost$ 0 | Defined$ Self | CounterType$ TIME | CounterNum$ 1 SVar:Rarity:Rare SVar:Picture:http://www.wizards.com/global/images/magic/general/deep_sea_kraken.jpg diff --git a/res/cardsfolder/n/nihilith.txt b/res/cardsfolder/n/nihilith.txt index ca440d9a57c..0e6cbb54796 100644 --- a/res/cardsfolder/n/nihilith.txt +++ b/res/cardsfolder/n/nihilith.txt @@ -5,7 +5,7 @@ Text:no text PT:4/4 K:Fear K:Suspend:7:1 B -T:Mode$ ChangesZone | ValidCard$ Card.nonToken+YouDontCtrl | Origin$ Any | Destination$ Graveyard | IsPresent$ Card.Self+counters_GE1_TIME | PresentZone$ Exile | TriggerZones$ Exile | Execute$ TrigRemoveCounter | OptionalDecider$ You | TriggerDescription$ Whenever a card is put into an opponent's graveyard from anywhere, if CARDNAME is suspended, you may remove a time counter from CARDNAME. +T:Mode$ ChangesZone | ValidCard$ Card.nonToken+YouDontCtrl | Origin$ Any | Destination$ Graveyard | IsPresent$ Card.Self+.suspended | PresentZone$ Exile | TriggerZones$ Exile | Execute$ TrigRemoveCounter | OptionalDecider$ You | TriggerDescription$ Whenever a card is put into an opponent's graveyard from anywhere, if CARDNAME is suspended, you may remove a time counter from CARDNAME. SVar:TrigRemoveCounter:AB$RemoveCounter | Cost$ 0 | Defined$ Self | CounterType$ TIME | CounterNum$ 1 SVar:Rarity:Rare SVar:Picture:http://www.wizards.com/global/images/magic/general/nihilith.jpg diff --git a/res/cardsfolder/p/pardic_dragon.txt b/res/cardsfolder/p/pardic_dragon.txt index 8d24d83c2d9..d9842e5b418 100644 --- a/res/cardsfolder/p/pardic_dragon.txt +++ b/res/cardsfolder/p/pardic_dragon.txt @@ -6,7 +6,7 @@ PT:4/4 K:Flying K:Suspend:2:R R A:AB$ Pump | Cost$ R | NumAtt$ +1 | SpellDescription$ CARDNAME gets +1/+0 until end of turn. -T:Mode$ SpellCast | ValidCard$ Card | ValidActivatingPlayer$ Opponent | TriggerZones$ Exile | IsPresent$ Card.counters_GE1_TIME+Self | PresentZone$ Exile | OptionalDecider$ Opponent | Execute$ TrigPutCounter | TriggerDescription$ Whenever an opponent casts a spell, if CARDNAME is suspended, that player may put a time counter on CARDNAME. +T:Mode$ SpellCast | ValidCard$ Card | ValidActivatingPlayer$ Opponent | TriggerZones$ Exile | IsPresent$ Card.suspended+Self | PresentZone$ Exile | OptionalDecider$ Opponent | Execute$ TrigPutCounter | TriggerDescription$ Whenever an opponent casts a spell, if CARDNAME is suspended, that player may put a time counter on CARDNAME. SVar:TrigPutCounter:AB$ PutCounter | Cost$ 0 | Defined$ Self | CounterType$ TIME | CounterNum$ 1 SVar:Rarity:Rare SVar:Picture:http://www.wizards.com/global/images/magic/general/pardic_dragon.jpg diff --git a/res/cardsfolder/v/vensers_diffusion.txt b/res/cardsfolder/v/vensers_diffusion.txt index f678f471ce6..7ada3ebe980 100644 --- a/res/cardsfolder/v/vensers_diffusion.txt +++ b/res/cardsfolder/v/vensers_diffusion.txt @@ -4,7 +4,7 @@ Types:Instant Text:no text A:SP$ Charm | Cost$ 2 U | CharmNum$ 1 | Choices$ Permanent,Suspended | SpellDescription$ Return target nonland permanent or suspended card to its owner's hand. SVar:Permanent:DB$ChangeZone | ValidTgts$ Permanent.nonLand | TgtPrompt$ Choose target non-Land permanent. | Origin$ Battlefield | Destination$ Hand | SpellDescription$ Target nonland permanent -SVar:Suspended:DB$ChangeZone | ChangeType$ Card.counters_GE1_TIME | TgtPrompt$ Choose target suspended card. | Hidden$ True | Origin$ Exile | Destination$ Hand | SpellDescription$ Target suspended card +SVar:Suspended:DB$ChangeZone | ChangeType$ Card.suspended | TgtPrompt$ Choose target suspended card. | Hidden$ True | Origin$ Exile | Destination$ Hand | SpellDescription$ Target suspended card SVar:Rarity:Common SVar:Picture:http://www.wizards.com/global/images/magic/general/vensers_diffusion.jpg SetInfo:FUT|Common|http://magiccards.info/scans/en/fut/47.jpg diff --git a/src/main/java/forge/Card.java b/src/main/java/forge/Card.java index 819d1202657..79e81affb3b 100644 --- a/src/main/java/forge/Card.java +++ b/src/main/java/forge/Card.java @@ -7065,6 +7065,11 @@ public class Card extends GameEntity implements Comparable { return false; } } + } else if (property.startsWith("suspended")) { + if (!this.hasSuspend() || !AllZoneUtil.isCardExiled(this) + || !AllZoneUtil.compare(this.getCounters(Counters.getType("TIME")), "GE", Integer.parseInt("1"))) { + return false; + } } else if (property.startsWith("power") || property.startsWith("toughness") || property.startsWith("cmc")) { int x = 0;