From fd1f6864694fef728179d7333895d61ff3608e4f Mon Sep 17 00:00:00 2001 From: Agetian Date: Fri, 6 Oct 2017 17:16:17 +0000 Subject: [PATCH] - RemAIDeck update: next iteration ("when CARDNAME enters the battlefield, return a creature you control to its owner's hand"). --- forge-ai/src/main/java/forge/ai/ComputerUtil.java | 15 ++++++++++++++- .../main/java/forge/ai/ability/ChangeZoneAi.java | 2 +- forge-gui/res/cardsfolder/a/ambush_krotiq.txt | 4 ++-- forge-gui/res/cardsfolder/c/cavern_harpy.txt | 4 ++-- forge-gui/res/cardsfolder/d/doomsday_specter.txt | 5 ++--- forge-gui/res/cardsfolder/f/fleetfoot_panther.txt | 4 ++-- forge-gui/res/cardsfolder/h/horned_kavu.txt | 4 ++-- forge-gui/res/cardsfolder/k/keymaster_rogue.txt | 4 ++-- forge-gui/res/cardsfolder/k/kjeldoran_dead.txt | 4 ++-- forge-gui/res/cardsfolder/l/lava_zombie.txt | 4 ++-- forge-gui/res/cardsfolder/m/marsh_crocodile.txt | 3 +-- forge-gui/res/cardsfolder/r/razing_snidd.txt | 7 ++++--- forge-gui/res/cardsfolder/s/sawtooth_loon.txt | 1 + forge-gui/res/cardsfolder/s/shivan_wurm.txt | 4 ++-- forge-gui/res/cardsfolder/s/shrieking_drake.txt | 4 ++-- forge-gui/res/cardsfolder/s/silver_drake.txt | 2 +- forge-gui/res/cardsfolder/s/sparkcaster.txt | 4 ++-- .../res/cardsfolder/s/steel_leaf_paladin.txt | 4 ++-- forge-gui/res/cardsfolder/s/stonecloaker.txt | 7 +++---- forge-gui/res/cardsfolder/s/storm_sculptor.txt | 5 ++--- forge-gui/res/cardsfolder/w/whitemane_lion.txt | 4 ++-- 21 files changed, 53 insertions(+), 42 deletions(-) diff --git a/forge-ai/src/main/java/forge/ai/ComputerUtil.java b/forge-ai/src/main/java/forge/ai/ComputerUtil.java index 95db01e730b..f933bdb53aa 100644 --- a/forge-ai/src/main/java/forge/ai/ComputerUtil.java +++ b/forge-ai/src/main/java/forge/ai/ComputerUtil.java @@ -700,6 +700,8 @@ public class ComputerUtil { return sacrificed; // sacrifice none } } + boolean exceptSelf = "ExceptSelf".equals(source.getParam("AILogic")); + boolean removedSelf = false; if (isOptional && source.hasParam("Devour") || source.hasParam("Exploit") || considerSacLogic) { if (source.hasParam("Exploit")) { @@ -757,11 +759,22 @@ public class ComputerUtil { final int max = Math.min(remaining.size(), amount); + if (exceptSelf) { + removedSelf = remaining.remove(source.getHostCard()); + } + for (int i = 0; i < max; i++) { Card c = chooseCardToSacrifice(remaining, ai, destroy); remaining.remove(c); - sacrificed.add(c); + if (c != null) { + sacrificed.add(c); + } } + + if (sacrificed.isEmpty() && removedSelf) { + sacrificed.add(source.getHostCard()); + } + return sacrificed; } diff --git a/forge-ai/src/main/java/forge/ai/ability/ChangeZoneAi.java b/forge-ai/src/main/java/forge/ai/ability/ChangeZoneAi.java index 0156645603c..8833ce27d2f 100644 --- a/forge-ai/src/main/java/forge/ai/ability/ChangeZoneAi.java +++ b/forge-ai/src/main/java/forge/ai/ability/ChangeZoneAi.java @@ -1381,7 +1381,7 @@ public class ChangeZoneAi extends SpellAbilityAi { String logic = sa.getParam("AILogic"); if ("NeverBounceItself".equals(logic)) { Card source = sa.getHostCard(); - if (fetchList.contains(source)) { + if (fetchList.contains(source) && fetchList.size() > 1) { // For cards that should never be bounced back to hand with their own [e.g. triggered] abilities, such as guild lands. fetchList.remove(source); } diff --git a/forge-gui/res/cardsfolder/a/ambush_krotiq.txt b/forge-gui/res/cardsfolder/a/ambush_krotiq.txt index 50ff7d88c25..00e36e20dbc 100644 --- a/forge-gui/res/cardsfolder/a/ambush_krotiq.txt +++ b/forge-gui/res/cardsfolder/a/ambush_krotiq.txt @@ -4,7 +4,7 @@ Types:Creature Insect PT:5/5 K:Trample T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return another creature you control to its owner's hand. -SVar:TrigChange:AB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Cost$ 0 | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Other+YouCtrl -SVar:RemAIDeck:True +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Other+YouCtrl +SVar:NeedsToPlay:Creature.YouCtrl+cmcLE5+inZoneBattlefield SVar:Picture:http://www.wizards.com/global/images/magic/general/ambush_krotiq.jpg Oracle:Trample\nWhen Ambush Krotiq enters the battlefield, return another creature you control to its owner's hand. diff --git a/forge-gui/res/cardsfolder/c/cavern_harpy.txt b/forge-gui/res/cardsfolder/c/cavern_harpy.txt index abaddf9c015..0feebecf4a9 100644 --- a/forge-gui/res/cardsfolder/c/cavern_harpy.txt +++ b/forge-gui/res/cardsfolder/c/cavern_harpy.txt @@ -5,7 +5,7 @@ PT:2/1 K:Flying T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a blue or black creature you control to its owner's hand. A:AB$ ChangeZone | Cost$ PayLife<1> | Origin$ Battlefield | Destination$ Hand | SpellDescription$ Return CARDNAME to its owner's hand. -SVar:TrigChange:AB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Cost$ 0 | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Black+YouCtrl,Creature.Blue+YouCtrl -SVar:RemAIDeck:True +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Black+YouCtrl,Creature.Blue+YouCtrl | AILogic$ NeverBounceItself +SVar:NeedsToPlay:Creature.Black+YouCtrl+cmcLE2+inZoneBattlefield,Creature.Blue+YouCtrl+cmcLE2+inZoneBattlefield SVar:Picture:http://www.wizards.com/global/images/magic/general/cavern_harpy.jpg Oracle:Flying\nWhen Cavern Harpy enters the battlefield, return a blue or black creature you control to its owner's hand.\nPay 1 life: Return Cavern Harpy to its owner's hand. diff --git a/forge-gui/res/cardsfolder/d/doomsday_specter.txt b/forge-gui/res/cardsfolder/d/doomsday_specter.txt index 896e55b4f3d..fb1efdb56a5 100644 --- a/forge-gui/res/cardsfolder/d/doomsday_specter.txt +++ b/forge-gui/res/cardsfolder/d/doomsday_specter.txt @@ -5,9 +5,8 @@ PT:2/3 K:Flying T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a blue or black creature you control to its owner's hand. T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigDiscard | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME deals combat damage to a player, look at that player's hand and choose a card from it. The player discards that card. -SVar:TrigChange:AB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Cost$ 0 | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Black+YouCtrl,Creature.Blue+YouCtrl -SVar:TrigDiscard:AB$ Discard | Cost$ 0 | Defined$ TriggeredTarget | NumCards$ 1 | Mode$ RevealYouChoose +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Black+YouCtrl,Creature.Blue+YouCtrl | AILogic$ NeverBounceItself +SVar:TrigDiscard:DB$ Discard | Defined$ TriggeredTarget | NumCards$ 1 | Mode$ RevealYouChoose SVar:NeedsToPlay:Creature.Black+YouCtrl+cmcLE3+inZoneBattlefield,Creature.Blue+YouCtrl+cmcLE3+inZoneBattlefield -SVar:RemRandomDeck:True SVar:Picture:http://www.wizards.com/global/images/magic/general/doomsday_specter.jpg Oracle:Flying\nWhen Doomsday Specter enters the battlefield, return a blue or black creature you control to its owner's hand.\nWhenever Doomsday Specter deals combat damage to a player, look at that player's hand and choose a card from it. The player discards that card. diff --git a/forge-gui/res/cardsfolder/f/fleetfoot_panther.txt b/forge-gui/res/cardsfolder/f/fleetfoot_panther.txt index e70fe7243c8..bbb1c8a73ea 100644 --- a/forge-gui/res/cardsfolder/f/fleetfoot_panther.txt +++ b/forge-gui/res/cardsfolder/f/fleetfoot_panther.txt @@ -4,7 +4,7 @@ Types:Creature Cat PT:3/4 K:Flash T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a green or white creature you control to its owner's hand. -SVar:TrigChange:AB$ChangeZone | Origin$ Battlefield | Destination$ Hand | Cost$ 0 | Hidden$ True | Mandatory$ True | ChangeType$ Creature.White+YouCtrl,Creature.Green+YouCtrl -SVar:RemAIDeck:True +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.White+YouCtrl,Creature.Green+YouCtrl | AILogic$ NeverBounceItself +SVar:NeedsToPlay:Creature.White+cmcLE3+YouCtrl+inZoneBattlefield,Creature.Green+cmcLE3+YouCtrl+inZoneBattlefield SVar:Picture:http://www.wizards.com/global/images/magic/general/fleetfoot_panther.jpg Oracle:Flash\nWhen Fleetfoot Panther enters the battlefield, return a green or white creature you control to its owner's hand. diff --git a/forge-gui/res/cardsfolder/h/horned_kavu.txt b/forge-gui/res/cardsfolder/h/horned_kavu.txt index 47383002348..c4ae56a3dc3 100644 --- a/forge-gui/res/cardsfolder/h/horned_kavu.txt +++ b/forge-gui/res/cardsfolder/h/horned_kavu.txt @@ -3,7 +3,7 @@ ManaCost:R G Types:Creature Kavu PT:3/4 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a red or green creature you control to its owner's hand. -SVar:TrigChange:AB$ChangeZone | Origin$ Battlefield | Destination$ Hand | Cost$ 0 | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Red+YouCtrl,Creature.Green+YouCtrl -SVar:RemAIDeck:True +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Red+YouCtrl,Creature.Green+YouCtrl | AILogic$ NeverBounceItself +SVar:NeedsToPay:Creature.YouCtrl+cmcLE3+inZoneBattlefield SVar:Picture:http://www.wizards.com/global/images/magic/general/horned_kavu.jpg Oracle:When Horned Kavu enters the battlefield, return a red or green creature you control to its owner's hand. diff --git a/forge-gui/res/cardsfolder/k/keymaster_rogue.txt b/forge-gui/res/cardsfolder/k/keymaster_rogue.txt index c4b529c227e..16169584a6d 100644 --- a/forge-gui/res/cardsfolder/k/keymaster_rogue.txt +++ b/forge-gui/res/cardsfolder/k/keymaster_rogue.txt @@ -4,7 +4,7 @@ Types:Creature Human Rogue PT:3/2 K:Unblockable T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a creature you control to its owner's hand. -SVar:TrigChange:AB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Cost$ 0 | Hidden$ True | Mandatory$ True | ChangeType$ Creature.YouCtrl -SVar:RemAIDeck:True +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.YouCtrl | AIlogic$ NeverBounceItself +SVar:NeedsToPlay:Creature.YouCtrl+cmcLE4+inZoneBattlefield SVar:Picture:http://www.wizards.com/global/images/magic/general/keymaster_rogue.jpg Oracle:Keymaster Rogue can't be blocked.\nWhen Keymaster Rogue enters the battlefield, return a creature you control to its owner's hand. diff --git a/forge-gui/res/cardsfolder/k/kjeldoran_dead.txt b/forge-gui/res/cardsfolder/k/kjeldoran_dead.txt index 46035880360..465590d4e60 100644 --- a/forge-gui/res/cardsfolder/k/kjeldoran_dead.txt +++ b/forge-gui/res/cardsfolder/k/kjeldoran_dead.txt @@ -3,9 +3,9 @@ ManaCost:B Types:Creature Skeleton PT:3/1 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigSac | TriggerDescription$ When CARDNAME enters the battlefield, sacrifice a creature. -SVar:TrigSac:AB$Sacrifice | Cost$ 0 | Defined$ You | SacValid$ Creature +SVar:TrigSac:DB$ Sacrifice | Defined$ You | SacValid$ Creature | AILogic$ ExceptSelf A:AB$ Regenerate | Cost$ B | SpellDescription$ Regenerate CARDNAME. SVar:RemAIDeck:True -SVar:NeedsToPlay:Creature.YouCtrl +SVar:NeedsToPlay:Creature.YouCtrl+token+powerLE3+toughnessLE3,Creature.YouCtrl+nonToken+powerLE2+toughnessLE3 SVar:Picture:http://www.wizards.com/global/images/magic/general/kjeldoran_dead.jpg Oracle:When Kjeldoran Dead enters the battlefield, sacrifice a creature.\n{B}: Regenerate Kjeldoran Dead. diff --git a/forge-gui/res/cardsfolder/l/lava_zombie.txt b/forge-gui/res/cardsfolder/l/lava_zombie.txt index e7b7f06e656..dfb6cd6d948 100644 --- a/forge-gui/res/cardsfolder/l/lava_zombie.txt +++ b/forge-gui/res/cardsfolder/l/lava_zombie.txt @@ -4,7 +4,7 @@ Types:Creature Zombie PT:4/3 A:AB$ Pump | Cost$ 2 | NumAtt$ +1 | SpellDescription$ CARDNAME gets +1/+0 until end of turn. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a black or red creature you control to its owner's hand. -SVar:TrigChange:AB$ChangeZone | Origin$ Battlefield | Destination$ Hand | Cost$ 0 | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Black+YouCtrl,Creature.Red+YouCtrl -SVar:RemAIDeck:True +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Black+YouCtrl,Creature.Red+YouCtrl | AILogic$ NeverBounceItself +SVar:NeedsToPlay:Creature.Black+cmcLE3+YouCtrl,Creature.Red+cmcLE3+YouCtrl SVar:Picture:http://www.wizards.com/global/images/magic/general/lava_zombie.jpg Oracle:When Lava Zombie enters the battlefield, return a black or red creature you control to its owner's hand.\n{2}: Lava Zombie gets +1/+0 until end of turn. diff --git a/forge-gui/res/cardsfolder/m/marsh_crocodile.txt b/forge-gui/res/cardsfolder/m/marsh_crocodile.txt index b6b8ab54543..e34a9bd03cc 100644 --- a/forge-gui/res/cardsfolder/m/marsh_crocodile.txt +++ b/forge-gui/res/cardsfolder/m/marsh_crocodile.txt @@ -4,9 +4,8 @@ Types:Creature Crocodile PT:4/4 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a blue or black creature you control to its owner's hand. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDiscard | TriggerDescription$ When CARDNAME enters the battlefield, each player discards a card. -SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Black+YouCtrl,Creature.Blue+YouCtrl +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Black+YouCtrl,Creature.Blue+YouCtrl | AILogic$ NeverBounceItself SVar:TrigDiscard:DB$ Discard | Defined$ Player | NumCards$ 1 | Mode$ TgtChoose SVar:NeedsToPlay:Creature.Black+YouCtrl+cmcLE3+inZoneBattlefield,Creature.Blue+YouCtrl+cmcLE3+inZoneBattlefield -SVar:RemRandomDeck:True SVar:Picture:http://www.wizards.com/global/images/magic/general/marsh_crocodile.jpg Oracle:When Marsh Crocodile enters the battlefield, return a blue or black creature you control to its owner's hand.\nWhen Marsh Crocodile enters the battlefield, each player discards a card. diff --git a/forge-gui/res/cardsfolder/r/razing_snidd.txt b/forge-gui/res/cardsfolder/r/razing_snidd.txt index 56828898696..3f648707c5c 100644 --- a/forge-gui/res/cardsfolder/r/razing_snidd.txt +++ b/forge-gui/res/cardsfolder/r/razing_snidd.txt @@ -4,8 +4,9 @@ Types:Creature Beast PT:3/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a black or red creature you control to its owner's hand. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigSac | TriggerDescription$ When CARDNAME enters the battlefield, each player sacrifices a land. -SVar:TrigChange:AB$ChangeZone | Origin$ Battlefield | Destination$ Hand | Cost$ 0 | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Black+YouCtrl,Creature.Red+YouCtrl -SVar:TrigSac:AB$ Sacrifice | Cost$ 0 | Defined$ Player | SacValid$ Land -SVar:RemAIDeck:True +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Black+YouCtrl,Creature.Red+YouCtrl | AILogic$ NeverBounceItself +SVar:TrigSac:DB$ Sacrifice | Defined$ Player | SacValid$ Land +SVar:RemRandomDeck:True +SVar:NeedsToPlay:Creature.Black+cmcLE3+YouCtrl+inZoneBattlefield,Creature.Red+cmcLE3+YouCtrl+inZoneBattlefield SVar:Picture:http://www.wizards.com/global/images/magic/general/razing_snidd.jpg Oracle:When Razing Snidd enters the battlefield, return a black or red creature you control to its owner's hand.\nWhen Razing Snidd enters the battlefield, each player sacrifices a land. diff --git a/forge-gui/res/cardsfolder/s/sawtooth_loon.txt b/forge-gui/res/cardsfolder/s/sawtooth_loon.txt index 0f9ff71117a..021fcf7ebdc 100644 --- a/forge-gui/res/cardsfolder/s/sawtooth_loon.txt +++ b/forge-gui/res/cardsfolder/s/sawtooth_loon.txt @@ -8,6 +8,7 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigChange:AB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Cost$ 0 | Hidden$ True | Mandatory$ True | ChangeType$ Creature.White+YouCtrl,Creature.Blue+YouCtrl SVar:TrigDraw:AB$ Draw | Cost$ 0 | Defined$ You | NumCards$ 2 | SubAbility$ DBChangeZone SVar:DBChangeZone:DB$ ChangeZone | Origin$ Hand | Destination$ Library | LibraryPosition$ -1 | ChangeNum$ 2 | Mandatory$ True +#TODO: The AI is bad with the "put two cards on the bottom of your library" thing, it'll put its best cards there because it thinks that it's as good as putting them on top. SVar:RemAIDeck:True SVar:Picture:http://www.wizards.com/global/images/magic/general/sawtooth_loon.jpg Oracle:Flying\nWhen Sawtooth Loon enters the battlefield, return a white or blue creature you control to its owner's hand.\nWhen Sawtooth Loon enters the battlefield, draw two cards, then put two cards from your hand on the bottom of your library. diff --git a/forge-gui/res/cardsfolder/s/shivan_wurm.txt b/forge-gui/res/cardsfolder/s/shivan_wurm.txt index 5e7922beece..bb8eb08117f 100644 --- a/forge-gui/res/cardsfolder/s/shivan_wurm.txt +++ b/forge-gui/res/cardsfolder/s/shivan_wurm.txt @@ -4,7 +4,7 @@ Types:Creature Wurm PT:7/7 K:Trample T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a red or green creature you control to its owner's hand. -SVar:TrigChange:AB$ChangeZone | Origin$ Battlefield | Destination$ Hand | Cost$ 0 | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Red+YouCtrl,Creature.Green+YouCtrl -SVar:NeedsToPlay:Creature.Red+YouCtrl+cmcLE4+inZoneBattlefield,Creature.Green+YouCtrl+cmcLE4+inZoneBattlefield +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.Red+YouCtrl,Creature.Green+YouCtrl | AILogic$ NeverBounceItself +SVar:NeedsToPlay:Creature.Red+YouCtrl+cmcLE5+inZoneBattlefield,Creature.Green+YouCtrl+cmcLE5+inZoneBattlefield SVar:Picture:http://www.wizards.com/global/images/magic/general/shivan_wurm.jpg Oracle:Trample\nWhen Shivan Wurm enters the battlefield, return a red or green creature you control to its owner's hand. diff --git a/forge-gui/res/cardsfolder/s/shrieking_drake.txt b/forge-gui/res/cardsfolder/s/shrieking_drake.txt index dd12f2d6b6e..27ba4720e23 100644 --- a/forge-gui/res/cardsfolder/s/shrieking_drake.txt +++ b/forge-gui/res/cardsfolder/s/shrieking_drake.txt @@ -4,7 +4,7 @@ Types:Creature Drake PT:1/1 K:Flying T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a creature you control to its owner's hand. -SVar:TrigChange:AB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Cost$ 0 | Hidden$ True | Mandatory$ True | ChangeType$ Creature.YouCtrl -SVar:RemAIDeck:True +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.YouCtrl | AILogic$ NeverBounceItself +SVar:NeedsToPlay:Creature.YouCtrl+token+powerLE2+inZoneBattlefield,Creature.YouCtrl+nonToken+cmcLE2+powerLE1+inZoneBattlefield SVar:Picture:http://www.wizards.com/global/images/magic/general/shrieking_drake.jpg Oracle:Flying\nWhen Shrieking Drake enters the battlefield, return a creature you control to its owner's hand. diff --git a/forge-gui/res/cardsfolder/s/silver_drake.txt b/forge-gui/res/cardsfolder/s/silver_drake.txt index bbb26bccba4..2632571a47b 100644 --- a/forge-gui/res/cardsfolder/s/silver_drake.txt +++ b/forge-gui/res/cardsfolder/s/silver_drake.txt @@ -4,7 +4,7 @@ Types:Creature Drake PT:3/3 K:Flying T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a white or blue creature you control to its owner's hand. -SVar:TrigChange:AB$ChangeZone | Origin$ Battlefield | Destination$ Hand | Cost$ 0 | Hidden$ True | Mandatory$ True | ChangeType$ Creature.White+YouCtrl,Creature.Blue+YouCtrl +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.White+YouCtrl,Creature.Blue+YouCtrl | AILogic$ NeverBounceItself SVar:NeedsToPlay:Creature.White+YouCtrl+cmcLE3+inZoneBattlefield,Creature.Blue+YouCtrl+cmcLE3+inZoneBattlefield SVar:Picture:http://www.wizards.com/global/images/magic/general/silver_drake.jpg Oracle:Flying\nWhen Silver Drake enters the battlefield, return a white or blue creature you control to its owner's hand. diff --git a/forge-gui/res/cardsfolder/s/sparkcaster.txt b/forge-gui/res/cardsfolder/s/sparkcaster.txt index 68d0f9d95cf..3ce3bfdfb33 100644 --- a/forge-gui/res/cardsfolder/s/sparkcaster.txt +++ b/forge-gui/res/cardsfolder/s/sparkcaster.txt @@ -4,8 +4,8 @@ Types:Creature Kavu PT:5/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a red or green creature you control to its owner's hand. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDealDamage | TriggerDescription$ When CARDNAME enters the battlefield, it deals 1 damage to target player. -SVar:TrigChange:AB$ChangeZone | Origin$ Battlefield | Destination$ Hand | Cost$ 0 | Hidden$ True | ChangeType$ Creature.Red+YouCtrl,Creature.Green+YouCtrl | ChangeNum$ 1 | Mandatory$ True -SVar:TrigDealDamage:AB$DealDamage | Cost$ 0 | ValidTgts$ Player | TgtPrompt$ Select target player | NumDmg$ 1 +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | ChangeType$ Creature.Red+YouCtrl,Creature.Green+YouCtrl | ChangeNum$ 1 | Mandatory$ True | AILogic$ NeverBounceItself +SVar:TrigDealDamage:DB$ DealDamage | ValidTgts$ Player | TgtPrompt$ Select target player | NumDmg$ 1 SVar:NeedsToPlay:Creature.Red+YouCtrl+cmcLE4+inZoneBattlefield,Creature.Green+YouCtrl+cmcLE4+inZoneBattlefield SVar:Picture:http://www.wizards.com/global/images/magic/general/sparkcaster.jpg Oracle:When Sparkcaster enters the battlefield, return a red or green creature you control to its owner's hand.\nWhen Sparkcaster enters the battlefield, it deals 1 damage to target player. diff --git a/forge-gui/res/cardsfolder/s/steel_leaf_paladin.txt b/forge-gui/res/cardsfolder/s/steel_leaf_paladin.txt index ac4726210aa..46e30b1f1e1 100644 --- a/forge-gui/res/cardsfolder/s/steel_leaf_paladin.txt +++ b/forge-gui/res/cardsfolder/s/steel_leaf_paladin.txt @@ -4,7 +4,7 @@ Types:Creature Elf Knight PT:4/4 K:First Strike T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a green or white creature you control to its owner's hand. -SVar:TrigChange:AB$ChangeZone | Origin$ Battlefield | Destination$ Hand | Cost$ 0 | Hidden$ True | Mandatory$ True | ChangeType$ Creature.White+YouCtrl,Creature.Green+YouCtrl -SVar:NeedsToPlay:Creature.White+YouCtrl+cmcLE3+inZoneBattlefield,Creature.Green+YouCtrl+cmcLE3+inZoneBattlefield +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.White+YouCtrl,Creature.Green+YouCtrl | AILogic$ NeverBounceItself +SVar:NeedsToPlay:Creature.White+YouCtrl+cmcLE4+inZoneBattlefield,Creature.Green+YouCtrl+cmcLE4+inZoneBattlefield SVar:Picture:http://www.wizards.com/global/images/magic/general/steel_leaf_paladin.jpg Oracle:First strike\nWhen Steel Leaf Paladin enters the battlefield, return a green or white creature you control to its owner's hand. diff --git a/forge-gui/res/cardsfolder/s/stonecloaker.txt b/forge-gui/res/cardsfolder/s/stonecloaker.txt index 888f120da1b..6314f542141 100644 --- a/forge-gui/res/cardsfolder/s/stonecloaker.txt +++ b/forge-gui/res/cardsfolder/s/stonecloaker.txt @@ -5,10 +5,9 @@ PT:3/2 K:Flash K:Flying T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a creature you control to its owner's hand. -SVar:TrigChange:AB$ChangeZone | Cost$ 0 | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.YouCtrl | ChangeNum$ 1 +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.YouCtrl | ChangeNum$ 1 | AILogic$ NeverBounceItself T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChange2 | TriggerDescription$ When CARDNAME enters the battlefield, exile target card from a graveyard. -SVar:TrigChange2:AB$ChangeZone | Cost$ 0 | Origin$ Graveyard | Destination$ Exile | ValidTgts$ Card | TgtPrompt$ Select target card from any graveyard -SVar:NeedsToPlay:Creature.YouCtrl+cmcLE2+inZoneBattlefield -SVar:RemRandomDeck:True +SVar:TrigChange2:DB$ ChangeZone | Origin$ Graveyard | Destination$ Exile | ValidTgts$ Card | TgtPrompt$ Select target card from any graveyard +SVar:NeedsToPlay:Creature.YouCtrl+cmcLE3+inZoneBattlefield SVar:Picture:http://www.wizards.com/global/images/magic/general/stonecloaker.jpg Oracle:Flash (You may cast this spell any time you could cast an instant.)\nFlying\nWhen Stonecloaker enters the battlefield, return a creature you control to its owner's hand.\nWhen Stonecloaker enters the battlefield, exile target card from a graveyard. diff --git a/forge-gui/res/cardsfolder/s/storm_sculptor.txt b/forge-gui/res/cardsfolder/s/storm_sculptor.txt index 7cdd58ba8a4..b63172d3bc5 100644 --- a/forge-gui/res/cardsfolder/s/storm_sculptor.txt +++ b/forge-gui/res/cardsfolder/s/storm_sculptor.txt @@ -4,8 +4,7 @@ Types:Creature Merfolk Wizard PT:3/2 K:Unblockable T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a creature you control to its owner's hand. -SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.YouCtrl -SVar:NeedsToPlay:Creature.YouCtrl+cmcLE3+inZoneBattlefield -SVar:RemRandomDeck:True +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.YouCtrl | AILogic$ NeverBounceItself +SVar:NeedsToPlay:Creature.YouCtrl+cmcLE4+inZoneBattlefield SVar:Picture:http://www.wizards.com/global/images/magic/general/storm_sculptor.jpg Oracle:Storm Sculptor can't be blocked.\nWhen Storm Sculptor enters the battlefield, return a creature you control to its owner's hand. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/w/whitemane_lion.txt b/forge-gui/res/cardsfolder/w/whitemane_lion.txt index 0d5a543e7fd..7f3d0e6c732 100644 --- a/forge-gui/res/cardsfolder/w/whitemane_lion.txt +++ b/forge-gui/res/cardsfolder/w/whitemane_lion.txt @@ -4,7 +4,7 @@ Types:Creature Cat PT:2/2 K:Flash T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.Self | Execute$ TrigChange | TriggerDescription$ When CARDNAME enters the battlefield, return a creature you control to its owner's hand. -SVar:TrigChange:AB$ ChangeZone | Cost$ 0 | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.YouCtrl | ChangeNum$ 1 -SVar:RemAIDeck:True +SVar:TrigChange:DB$ ChangeZone | Origin$ Battlefield | Destination$ Hand | Hidden$ True | Mandatory$ True | ChangeType$ Creature.YouCtrl | ChangeNum$ 1 | AILogic$ NeverBounceItself +SVar:NeedsToPlay:Creature.YouCtrl+token+powerLE1+toughnessLE3,Creature.YouCtrl+cmcLE2+powerLE1+toughnessLE3+inZoneBattlefield SVar:Picture:http://www.wizards.com/global/images/magic/general/whitemane_lion.jpg Oracle:Flash\nWhen Whitemane Lion enters the battlefield, return a creature you control to its owner's hand.