Added a way to specify a NeedsToPlay variable for Evoke.

This commit is contained in:
Michael Kamensky
2019-06-01 02:24:26 +00:00
parent 7da1d23018
commit a4ca3c77d8
14 changed files with 26 additions and 0 deletions

View File

@@ -1842,6 +1842,15 @@ public class ComputerUtilCard {
String needsToPlayName = isRightSplit ? "SplitNeedsToPlay" : "NeedsToPlay";
String needsToPlayVarName = isRightSplit ? "SplitNeedsToPlayVar" : "NeedsToPlayVar";
if (sa != null && sa.isEvoke()) {
if (card.hasSVar("NeedsToPlayEvoked")) {
needsToPlayName = "NeedsToPlayEvoked";
}
if (card.hasSVar("NeedsToPlayEvokedVar")) {
needsToPlayVarName = "NeedsToPlayEvokedVar";
}
}
if (card.hasSVar(needsToPlayName)) {
final String needsToPlay = card.getSVar(needsToPlayName);
CardCollectionView list = game.getCardsIn(ZoneType.Battlefield);

View File

@@ -5,5 +5,6 @@ PT:4/4
K:Evoke:1 U U
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigBounce | TriggerDescription$ When CARDNAME enters the battlefield, return target nonland permanent to its owner's hand.
SVar:TrigBounce:DB$ChangeZone | ValidTgts$ Permanent.nonLand | TgtPrompt$ Choose target non-Land permanent. | Origin$ Battlefield | Destination$ Hand
SVar:NeedsToPlayEvoked:Card.nonLand+OppCtrl
SVar:Picture:http://www.wizards.com/global/images/magic/general/aethersnipe.jpg
Oracle:When Aethersnipe enters the battlefield, return target nonland permanent to its owner's hand.\nEvoke {1}{U}{U} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.)

View File

@@ -6,6 +6,7 @@ K:Evoke:1 G
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ When CARDNAME enters the battlefield, target creature gets +3/+3 until end of turn.
SVar:TrigPump:DB$Pump | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ +3 | NumDef$ +3
SVar:PlayMain1:TRUE
SVar:NeedsToPlayEvoked:Creature.YouCtrl
K:Flash
SVar:Picture:http://www.wizards.com/global/images/magic/general/briarhorn.jpg
Oracle:Flash\nWhen Briarhorn enters the battlefield, target creature gets +3/+3 until end of turn.\nEvoke {1}{G} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.)

View File

@@ -6,5 +6,6 @@ K:Trample
K:Evoke:4 R
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target land.
SVar:TrigDestroy:DB$Destroy | ValidTgts$ Land | TgtPrompt$ Select a land.
SVar:NeedsToPlayEvoked:Land.OppCtrl
SVar:Picture:http://www.wizards.com/global/images/magic/general/faultgrinder.jpg
Oracle:Trample\nWhen Faultgrinder enters the battlefield, destroy target land.\nEvoke {4}{R} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.)

View File

@@ -5,5 +5,6 @@ PT:3/3
K:Evoke:R
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target artifact.
SVar:TrigDestroy:DB$Destroy | ValidTgts$ Artifact | TgtPrompt$ Select target artifact.
SVar:NeedsToPlayEvoked:Artifact.OppCtrl
SVar:Picture:http://www.wizards.com/global/images/magic/general/ingot_chewer.jpg
Oracle:When Ingot Chewer enters the battlefield, destroy target artifact.\nEvoke {R} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.)

View File

@@ -6,5 +6,6 @@ K:Evoke:R
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ When CARDNAME enters the battlefield, target creature gets +2/+0 and gains haste until end of turn.
SVar:TrigPump:DB$ Pump | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ +2 | KW$ Haste
SVar:PlayMain1:ALWAYS
SVar:NeedsToPlayEvoked:Creature.YouCtrl
SVar:Picture:http://www.wizards.com/global/images/magic/general/inner_flame_acolyte.jpg
Oracle:When Inner-Flame Acolyte enters the battlefield, target creature gets +2/+0 and gains haste until end of turn.\nEvoke {R} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.)

View File

@@ -6,4 +6,6 @@ K:Evoke:3 W
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigPutCounterAll | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME leaves the battlefield, put a +1/+1 counter on each creature target player controls.
SVar:TrigPutCounterAll:DB$ PutCounterAll | ValidTgts$ Player | TgtPrompt$ Select a player | ValidCards$ Creature | CounterType$ P1P1 | CounterNum$ 1
SVar:Picture:http://www.wizards.com/global/images/magic/general/meadowboon.jpg
SVar:NeedsToPlayEvokedVar:Z GE2
SVar:Z:Count$Valid Creature.YouCtrl
Oracle:When Meadowboon leaves the battlefield, put a +1/+1 counter on each creature target player controls.\nEvoke {3}{W} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.)

View File

@@ -6,5 +6,6 @@ K:Flying
K:Evoke:3 U
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigBounce | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME leaves the battlefield, put target nonland permanent on top of its owner's library.
SVar:TrigBounce:DB$ChangeZone | ValidTgts$ Permanent.nonLand | TgtPrompt$ Choose target non-Land permanent | Origin$ Battlefield | Destination$ Library | LibraryPosition$ 0
SVar:NeedsToPlayEvoked:Card.nonLand+OppCtrl
SVar:Picture:http://www.wizards.com/global/images/magic/general/nevermaker.jpg
Oracle:Flying\nWhen Nevermaker leaves the battlefield, put target nonland permanent on top of its owner's library.\nEvoke {3}{U} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.)

View File

@@ -6,4 +6,6 @@ K:Deathtouch
K:Evoke:3 B
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigPumpAll | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME leaves the battlefield, all creatures get -3/-3 until end of turn.
SVar:TrigPumpAll:DB$PumpAll | ValidCards$ Creature | NumAtt$ -3 | NumDef$ -3 | IsCurse$ True
SVar:NeedsToPlayEvokedVar:Z GE2
SVar:Z:Count$Valid Creature.OppCtrl+toughnessLE3
Oracle:Deathtouch\nWhen Night Incarnate leaves the battlefield, all creatures get -3/-3 until end of turn.\nEvoke {3}{B} (You may cast this spell for its evoke cost. If you do, it's sacrifices when it enters the battlefield.)

View File

@@ -7,5 +7,7 @@ K:Evoke:B
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigExile | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME leaves the battlefield, exile target card from a graveyard.
SVar:TrigExile:DB$ChangeZone | Origin$ Graveyard | Destination$ Exile | TgtPrompt$ Choose target card in a graveyard | ValidTgts$ Card
AI:RemoveDeck:All
SVar:NeedsToPlayEvokedVar:Z GE1
SVar:Z:Count$ValidGraveyard Card.OppCtrl
SVar:Picture:http://www.wizards.com/global/images/magic/general/offalsnout.jpg
Oracle:Flash\nWhen Offalsnout leaves the battlefield, exile target card from a graveyard.\nEvoke {B} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.)

View File

@@ -6,5 +6,7 @@ K:Flying
K:Evoke:5 W
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigReturnCreatures | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME leaves the battlefield, return up to two target creature cards with power 2 or less from your graveyard to the battlefield.
SVar:TrigReturnCreatures:DB$ChangeZone | Origin$ Graveyard | Destination$ Battlefield | TargetMin$ 0 | TargetMax$ 2 | ValidTgts$ Creature.powerLE2 | TargetsWithDefinedController$ TriggeredCardController | TgtPrompt$ Choose target creature
SVar:NeedsToPlayEvokedVar:Z GE2
SVar:Z:Count$ValidGraveyard Creature.YouCtrl+powerLE2
SVar:Picture:http://www.wizards.com/global/images/magic/general/reveillark.jpg
Oracle:Flying\nWhen Reveillark leaves the battlefield, return up to two target creature cards with power 2 or less from your graveyard to the battlefield.\nEvoke {5}{W} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.)

View File

@@ -6,5 +6,6 @@ K:Fear
K:Evoke:1 B
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target nonartifact, nonblack creature.
SVar:TrigDestroy:DB$Destroy | ValidTgts$ Creature.nonBlack+nonArtifact | TgtPrompt$ Select target nonartifact, nonblack creature.
SVar:NeedsToPlayEvoked:Creature.OppCtrl+nonArtifact+nonBlack
SVar:Picture:http://www.wizards.com/global/images/magic/general/shriekmaw.jpg
Oracle:Fear (This creature can't be blocked except by artifact creatures and/or black creatures.)\nWhen Shriekmaw enters the battlefield, destroy target nonartifact, nonblack creature.\nEvoke {1}{B} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.)

View File

@@ -6,4 +6,5 @@ K:Evoke:1 R R
T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigDamageCreature | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME leaves the battlefield, it deals 6 damage to target creature.
SVar:TrigDamageCreature:DB$DealDamage | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumDmg$ 6
SVar:Picture:http://www.wizards.com/global/images/magic/general/spitebellows.jpg
SVar:NeedsToPlayEvoked:Creature.OppCtrl+toughnessLE6
Oracle:When Spitebellows leaves the battlefield, it deals 6 damage to target creature.\nEvoke {1}{R}{R} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.)

View File

@@ -6,5 +6,6 @@ K:Flying
K:Evoke:W
T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerDescription$ When CARDNAME enters the battlefield, destroy target enchantment.
SVar:TrigDestroy:DB$Destroy | ValidTgts$ Enchantment | TgtPrompt$ Select target enchantment
SVar:NeedsToPlayEvoked:Enchantment.OppCtrl
SVar:Picture:http://www.wizards.com/global/images/magic/general/wispmare.jpg
Oracle:Flying\nWhen Wispmare enters the battlefield, destroy target enchantment.\nEvoke {W} (You may cast this spell for its evoke cost. If you do, it's sacrificed when it enters the battlefield.)