From 16e4c1196187bb36300852bd9a91448a106b7048 Mon Sep 17 00:00:00 2001 From: Agetian Date: Sat, 6 Jan 2018 21:46:12 +0300 Subject: [PATCH 01/20] - Updated ExploreEffect to make the stack description account for cards that actually target other cards to explore (e.g. Enter the Unknown). --- .../forge/game/ability/effects/ExploreEffect.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java b/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java index 4d6ea7aeb34..a593fbfc0a8 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java @@ -12,6 +12,7 @@ import forge.game.player.PlayerController; import forge.game.spellability.SpellAbility; import forge.game.trigger.TriggerType; import forge.game.zone.ZoneType; +import forge.util.TextUtil; import java.util.List; import java.util.Map; @@ -26,7 +27,16 @@ public class ExploreEffect extends SpellAbilityEffect { @Override protected String getStackDescription(SpellAbility sa) { final Card host = sa.getHostCard(); - return host.getName() + " explores."; + + List tgt = getTargetCards(sa); + List tgtNames = Lists.newArrayList(); + for (Card c : tgt) { + tgtNames.add(c.getName()); + } + + String explrs = TextUtil.join(tgtNames, ","); + + return (explrs.isEmpty() ? host.getName() : explrs) + " explores."; } /* (non-Javadoc) From b0525bf06ba1c996c5607ca27c5a07addd9c3482 Mon Sep 17 00:00:00 2001 From: Agetian Date: Sat, 6 Jan 2018 21:52:28 +0300 Subject: [PATCH 02/20] - Additional tweak for ExploreEffect stack description. --- .../main/java/forge/game/ability/effects/ExploreEffect.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java b/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java index a593fbfc0a8..b571a74d591 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java @@ -35,8 +35,9 @@ public class ExploreEffect extends SpellAbilityEffect { } String explrs = TextUtil.join(tgtNames, ","); + String explrVerb = tgtNames.size() > 1 ? " explore." : " explores."; - return (explrs.isEmpty() ? host.getName() : explrs) + " explores."; + return (explrs.isEmpty() ? host.getName() : explrs) + explrVerb; } /* (non-Javadoc) From 99728fd237fab9129d967c66490bc48e6a9d260c Mon Sep 17 00:00:00 2001 From: Agetian Date: Sat, 6 Jan 2018 21:56:37 +0300 Subject: [PATCH 03/20] - Additional tweak for ExploreEffect stack description. --- .../main/java/forge/game/ability/effects/ExploreEffect.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java b/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java index b571a74d591..32846f429a6 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java @@ -35,9 +35,9 @@ public class ExploreEffect extends SpellAbilityEffect { } String explrs = TextUtil.join(tgtNames, ","); - String explrVerb = tgtNames.size() > 1 ? " explore." : " explores."; + String explrVerb = tgtNames.size() > 1 ? "explore." : "explores."; - return (explrs.isEmpty() ? host.getName() : explrs) + explrVerb; + return TextUtil.concatWithSpace(explrs.isEmpty() ? host.getName() : explrs, explrVerb); } /* (non-Javadoc) From ffc2324dd5db513cf36ee9a426a0af53ecafac92 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20=C4=8Ctrn=C3=A1ct?= Date: Sat, 6 Jan 2018 22:24:06 +0000 Subject: [PATCH 04/20] Add new file --- forge-gui/res/cardsfolder/upcoming/kitesail_corsair.txt | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/kitesail_corsair.txt diff --git a/forge-gui/res/cardsfolder/upcoming/kitesail_corsair.txt b/forge-gui/res/cardsfolder/upcoming/kitesail_corsair.txt new file mode 100644 index 00000000000..8ee2c70c259 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/kitesail_corsair.txt @@ -0,0 +1,7 @@ +Name:Kitesail Corsair +ManaCost:1 U +Types:Creature Human Pirate +PT:2/1 +S:Mode$ Continuous | Affected$ Card.Self+attacking | AddKeyword$ Flying | Description$ CARDNAME has flying as long as it's attacking. +SVar:Picture:http://www.wizards.com/global/images/magic/general/kitesail_corsair.jpg +Oracle:Kitesail Corsair has flying as long as it's attacking. \ No newline at end of file From a70513985af39df024c2bac6c1bc5e7e2ecd025c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20=C4=8Ctrn=C3=A1ct?= Date: Sat, 6 Jan 2018 22:29:17 +0000 Subject: [PATCH 05/20] Add new file --- forge-gui/res/cardsfolder/upcoming/mist_cloaked_herald.txt | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/mist_cloaked_herald.txt diff --git a/forge-gui/res/cardsfolder/upcoming/mist_cloaked_herald.txt b/forge-gui/res/cardsfolder/upcoming/mist_cloaked_herald.txt new file mode 100644 index 00000000000..abfd6e3b412 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/mist_cloaked_herald.txt @@ -0,0 +1,7 @@ +Name:Mist-Cloaked Herald +ManaCost:U +Types:Creature Merfolk Warrior +PT:1/1 +K:Unblockable +SVar:Picture:http://www.wizards.com/global/images/magic/general/mist_cloaked_herald.jpg +Oracle:Mist-Cloaked Herald can't be blocked. \ No newline at end of file From c155317a6ba71be67ad6b58ab4650e1922db4894 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20=C4=8Ctrn=C3=A1ct?= Date: Sat, 6 Jan 2018 22:36:59 +0000 Subject: [PATCH 06/20] Add new file --- .../cardsfolder/upcoming/nezahal_primal_tide.txt | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/nezahal_primal_tide.txt diff --git a/forge-gui/res/cardsfolder/upcoming/nezahal_primal_tide.txt b/forge-gui/res/cardsfolder/upcoming/nezahal_primal_tide.txt new file mode 100644 index 00000000000..a44e719c492 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/nezahal_primal_tide.txt @@ -0,0 +1,13 @@ +Name:Nezahal, Primal Tide +ManaCost:5 U U +Types:Legendary Creature Elder Dinosaur +PT:7/7 +K:CARDNAME can't be countered. +S:Mode$ Continuous | Affected$ You | SetMaxHandSize$ Unlimited | Description$ You have no maximum hand size. +T:Mode$ SpellCast | TriggerZones$ Battlefield | ValidCard$ Card.nonCreature | ValidActivatingPlayer$ Opponent | Execute$ TrigDraw | TriggerDescription$ Whenever an opponent casts a noncreature spell, draw a card. +SVar:TrigDraw:DB$Draw | Defined$ You | NumCards$ 1 +A:AB$ ChangeZone | Cost$ Discard<3/Card> | Defined$ Self | Origin$ Battlefield | Destination$ Exile | SubAbility$ DelTrig | SpellDescription$ Exile CARDNAME. Return it to the battlefield tapped under its owner's control at the beginning of the next end step. +SVar:DelTrig:DB$ DelayedTrigger | Mode$ Phase | Phase$ End of Turn | Execute$ TrigReturn | TriggerDescription$ Return CARDNAME to the battlefield tapped under its owner's control. +SVar:TrigReturn:DB$ ChangeZone | Defined$ Self | Origin$ Exile | Destination$ Battlefield | Tapped$ True +SVar:Picture:http://www.wizards.com/global/images/magic/general/nezahal_primal_tide.jpg +Oracle:Nezahal, Primal Tide can't be countered.\nYou have no maximum hand size.\nWhenever an opponent casts a noncreature spell, draw a card.\nDiscard three cards: Exile Nezahal. Return it to the battlefield tapped under its owner's control at the beginning of the next end step. \ No newline at end of file From e4d469a408c737029d0ee4ac9972111acb81ce94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20=C4=8Ctrn=C3=A1ct?= Date: Sat, 6 Jan 2018 22:42:08 +0000 Subject: [PATCH 07/20] Add new file --- forge-gui/res/cardsfolder/upcoming/river_darter.txt | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/river_darter.txt diff --git a/forge-gui/res/cardsfolder/upcoming/river_darter.txt b/forge-gui/res/cardsfolder/upcoming/river_darter.txt new file mode 100644 index 00000000000..cf96545f7df --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/river_darter.txt @@ -0,0 +1,7 @@ +Name:River Darter +ManaCost:2 U +Types:Creature Merfolk Warrior +PT:2/3 +K:CantBeBlockedBy Permanent.Dinosaur +SVar:Picture:http://www.wizards.com/global/images/magic/general/river_darter.jpg +Oracle:River Darter can't be blocked by Dinosaurs. \ No newline at end of file From ed87267633745a5bb7b49e7ffb21895b02ede151 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20=C4=8Ctrn=C3=A1ct?= Date: Sat, 6 Jan 2018 22:44:50 +0000 Subject: [PATCH 08/20] Add new file --- forge-gui/res/cardsfolder/upcoming/riverwise_augur.txt | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/riverwise_augur.txt diff --git a/forge-gui/res/cardsfolder/upcoming/riverwise_augur.txt b/forge-gui/res/cardsfolder/upcoming/riverwise_augur.txt new file mode 100644 index 00000000000..6aed430caf8 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/riverwise_augur.txt @@ -0,0 +1,9 @@ +Name:Riverwise Augur +ManaCost:3 U +Types:Creature Merfolk Wizard +PT:2/2 +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ When CARDNAME enters the battlefield, draw a card. +SVar:TrigDraw:DB$Draw | Defined$ You | NumCards$ 3 | SubAbility$ DBChangeZone +SVar:DBChangeZone:DB$ChangeZone | Origin$ Hand | Destination$ Library | ChangeNum$ 2 | Mandatory$ True +SVar:Picture:http://www.wizards.com/global/images/magic/general/riverwise_augur.jpg +Oracle:When Riverwise Augur enters the battlefield, draw three cards, then put two cards from your hand on top of your library in any order. \ No newline at end of file From e9f8877decd4da9f4a4281f0de1a7f45d31bbf77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20=C4=8Ctrn=C3=A1ct?= Date: Sat, 6 Jan 2018 22:50:14 +0000 Subject: [PATCH 09/20] Add new file --- forge-gui/res/cardsfolder/upcoming/sea_legs.txt | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/sea_legs.txt diff --git a/forge-gui/res/cardsfolder/upcoming/sea_legs.txt b/forge-gui/res/cardsfolder/upcoming/sea_legs.txt new file mode 100644 index 00000000000..4f2efa463de --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/sea_legs.txt @@ -0,0 +1,11 @@ +Name:Sea Legs +ManaCost:U +Types:Enchantment Aura +K:Flash +K:Enchant creature +A:SP$ Attach | Cost$ U | ValidTgts$ Creature | AILogic$ SpecificCard +S:Mode$ Continuous | Affected$ Creature.EnchantedBy+Pirate | AddToughness$ 2 | Description$ Enchanted creature gets +0/+2 as long as it's a Pirate. Otherwise, it gets -2/-0. +S:Mode$ Continuous | Affected$ Creature.EnchantedBy+nonZombie | AddPower$ -2 +DeckNeeds:Type$Pirate +SVar:Picture:http://www.wizards.com/global/images/magic/general/sea_legs.jpg +Oracle:Flash\nEnchant creature\nEnchanted creature gets +0/+2 as long as it's a Pirate. Otherwise, it gets -2/-0. \ No newline at end of file From 52b5ef7647e644ec82940eeb16047c483181d7ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20=C4=8Ctrn=C3=A1ct?= Date: Sat, 6 Jan 2018 22:53:03 +0000 Subject: [PATCH 10/20] Update curious_obsession.txt --- forge-gui/res/cardsfolder/upcoming/curious_obsession.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/upcoming/curious_obsession.txt b/forge-gui/res/cardsfolder/upcoming/curious_obsession.txt index 0327a8cea7c..3720b801e16 100644 --- a/forge-gui/res/cardsfolder/upcoming/curious_obsession.txt +++ b/forge-gui/res/cardsfolder/upcoming/curious_obsession.txt @@ -4,7 +4,7 @@ Types:Enchantment Aura K:Enchant creature A:SP$ Attach | Cost$ U | ValidTgts$ Creature | AILogic$ Pump S:Mode$ Continuous | Affected$ Creature.AttachedBy | AddPower$ 1 | AddToughness$ 1 | AddTrigger$ TriggerDamageDone | AddSVar$ CuriousObsessionDraw | Description$ Enchanted creature gets +1/+1 and has "Whenever this creature deals damage to an opponent, you may draw a card." -SVar:TriggerDamageDone:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Opponent | OptionalDecider$ You | Execute$ CuriousObsessionDraw | TriggerDescription$ Whenever enchanted creature deals damage to an opponent, you may draw a card. +SVar:TriggerDamageDone:Mode$ DamageDone | ValidSource$ Card.Self | CombatDamage$ True | ValidTarget$ Player | OptionalDecider$ You | Execute$ CuriousObsessionDraw | TriggerDescription$ Whenever this creature deals combat damage to a player, you may draw a card. SVar:CuriousObsessionDraw:DB$Draw | Defined$ You | NumCards$ 1 T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Battlefield | CheckSVar$ X | SVarCompare$ EQ0 | Execute$ TrigSac | TriggerDescription$ At the beginning of your end step, if you didn't attack with a creature this turn, sacrifice CARDNAME. SVar:TrigSac:DB$ Sacrifice | SacValid$ Self From 5076d03143706701eb62fba7532d1c27d44474a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20=C4=8Ctrn=C3=A1ct?= Date: Sat, 6 Jan 2018 22:56:59 +0000 Subject: [PATCH 11/20] Add new file --- forge-gui/res/cardsfolder/upcoming/seafloor_oracle.txt | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/seafloor_oracle.txt diff --git a/forge-gui/res/cardsfolder/upcoming/seafloor_oracle.txt b/forge-gui/res/cardsfolder/upcoming/seafloor_oracle.txt new file mode 100644 index 00000000000..e77e7fc887f --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/seafloor_oracle.txt @@ -0,0 +1,8 @@ +Name:Seafloor Oracle +ManaCost:2 U U +Types:Creature Merfolk Wizard +PT:2/3 +T:Mode$ DamageDone | ValidSource$ Permanent.Merfolk+YouCtrl | ValidTarget$ Player | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ Whenever a Merfolk you control deals combat damage to a player, draw a card. +SVar:TrigDraw:DB$ Draw | NumCards$ 1 +SVar:Picture:http://www.wizards.com/global/images/magic/general/seafloor_oracle.jpg +Oracle:Whenever a Merfolk you control deals combat damage to a player, draw a card. \ No newline at end of file From 9915d3c9ace7e3e1e713fd7037deae1ac09d988e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20=C4=8Ctrn=C3=A1ct?= Date: Sat, 6 Jan 2018 22:57:26 +0000 Subject: [PATCH 12/20] Update bident_of_thassa.txt --- forge-gui/res/cardsfolder/b/bident_of_thassa.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/b/bident_of_thassa.txt b/forge-gui/res/cardsfolder/b/bident_of_thassa.txt index 74c74ff15b6..ee8bedb98ed 100644 --- a/forge-gui/res/cardsfolder/b/bident_of_thassa.txt +++ b/forge-gui/res/cardsfolder/b/bident_of_thassa.txt @@ -1,7 +1,7 @@ Name:Bident of Thassa ManaCost:2 U U Types:Legendary Enchantment Artifact -T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl | ValidTarget$ Player | CombatDamage$ True | OptionalDecider$ You | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ Whenever a creature you control deals combat damage to an opponent, you may draw a card. +T:Mode$ DamageDone | ValidSource$ Creature.YouCtrl | ValidTarget$ Player | CombatDamage$ True | OptionalDecider$ You | TriggerZones$ Battlefield | Execute$ TrigDraw | TriggerDescription$ Whenever a creature you control deals combat damage to a player, you may draw a card. SVar:TrigDraw:DB$ Draw | NumCards$ 1 A:AB$ Effect | Cost$ 1 U T | StaticAbilities$ MustAttack | References$ MustAttack | SpellDescription$ Creatures your opponents control attack this turn if able. SVar:MustAttack:Mode$ Continuous | EffectZone$ Command | Affected$ Creature.OppCtrl | AddHiddenKeyword$ CARDNAME attacks each combat if able. | Description$ Creatures your opponents control attack this turn if able. From e1f3fb6ac0afebc605833d12039ff1a3f175b49e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20=C4=8Ctrn=C3=A1ct?= Date: Sat, 6 Jan 2018 22:58:47 +0000 Subject: [PATCH 13/20] Update snake_umbra.txt --- forge-gui/res/cardsfolder/s/snake_umbra.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/s/snake_umbra.txt b/forge-gui/res/cardsfolder/s/snake_umbra.txt index 0a6fc359008..8a29e6ec17a 100644 --- a/forge-gui/res/cardsfolder/s/snake_umbra.txt +++ b/forge-gui/res/cardsfolder/s/snake_umbra.txt @@ -5,7 +5,7 @@ K:Enchant creature K:Totem armor A:SP$ Attach | Cost$ 2 G | ValidTgts$ Creature | AILogic$ Pump S:Mode$ Continuous | Affected$ Creature.AttachedBy | AddPower$ 1 | AddToughness$ 1 | AddTrigger$ TriggerDamageDone | AddSVar$ SnakeUmbraDraw | Description$ Enchanted creature gets +1/+1 and has "Whenever this creature deals damage to an opponent, you may draw a card." -SVar:TriggerDamageDone:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Opponent | OptionalDecider$ You | Execute$ SnakeUmbraDraw | TriggerDescription$ Whenever enchanted creature deals damage to an opponent, you may draw a card. +SVar:TriggerDamageDone:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Opponent | OptionalDecider$ You | Execute$ SnakeUmbraDraw | TriggerDescription$ Whenever this creature deals damage to an opponent, you may draw a card. SVar:SnakeUmbraDraw:DB$Draw | Defined$ You | NumCards$ 1 SVar:Picture:http://www.wizards.com/global/images/magic/general/snake_umbra.jpg Oracle:Enchant creature\nEnchanted creature gets +1/+1 and has "Whenever this creature deals damage to an opponent, you may draw a card."\nTotem armor (If enchanted creature would be destroyed, instead remove all damage from it and destroy this Aura.) From fbe169f06d39f7da8e5938d930f8060368f28001 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20=C4=8Ctrn=C3=A1ct?= Date: Sat, 6 Jan 2018 23:08:32 +0000 Subject: [PATCH 14/20] Add new file --- forge-gui/res/cardsfolder/upcoming/siren_reaver.txt | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/siren_reaver.txt diff --git a/forge-gui/res/cardsfolder/upcoming/siren_reaver.txt b/forge-gui/res/cardsfolder/upcoming/siren_reaver.txt new file mode 100644 index 00000000000..e45883c5634 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/siren_reaver.txt @@ -0,0 +1,9 @@ +Name:Siren Reaver +ManaCost:3 U +Types:Creature Siren Pirate +PT:3/2 +S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ 1 | EffectZone$ All | CheckSVar$ RaidTest | SVarCompare$ GE1 | Description$ Raid — CARDNAME costs {1} less to cast if you attacked with a creature this turn. +K:Flying +SVar:RaidTest:Count$AttackersDeclared +SVar:Picture:http://www.wizards.com/global/images/magic/general/siren_reaver.jpg +Oracle:Raid — Siren Reaver costs {1} less to cast if you attacked with a creature this turn.\nFlying From 345c809a23c7cdb5195e157a2a8616d7a1a65057 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20=C4=8Ctrn=C3=A1ct?= Date: Sat, 6 Jan 2018 23:12:36 +0000 Subject: [PATCH 15/20] Add new file --- forge-gui/res/cardsfolder/upcoming/soul_of_the_rapids.txt | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/soul_of_the_rapids.txt diff --git a/forge-gui/res/cardsfolder/upcoming/soul_of_the_rapids.txt b/forge-gui/res/cardsfolder/upcoming/soul_of_the_rapids.txt new file mode 100644 index 00000000000..0afca5a64dc --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/soul_of_the_rapids.txt @@ -0,0 +1,8 @@ +Name:Soul of the Rapids +ManaCost:3 U U +Types:Creature Elemental +PT:3/2 +K:Flying +K:Hexproof +SVar:Picture:http://www.wizards.com/global/images/magic/general/soul_of_the_rapids.jpg +Oracle:Flying\nHexproof (This creature can't be the target of spells or abilities your opponents control.) \ No newline at end of file From b4cc04f32b7ac02d012ddcd7953d855ae3c8211d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20=C4=8Ctrn=C3=A1ct?= Date: Sat, 6 Jan 2018 23:19:35 +0000 Subject: [PATCH 16/20] Add new file --- forge-gui/res/cardsfolder/upcoming/sworn_guardian.txt | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/sworn_guardian.txt diff --git a/forge-gui/res/cardsfolder/upcoming/sworn_guardian.txt b/forge-gui/res/cardsfolder/upcoming/sworn_guardian.txt new file mode 100644 index 00000000000..c6ccdc7a8e2 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/sworn_guardian.txt @@ -0,0 +1,6 @@ +Name:Sworn Guardian +ManaCost:1 U +Types:Creature Merfolk Warrior +PT:1/3 +SVar:Picture:http://www.wizards.com/global/images/magic/general/sworn_guardian.jpg +Oracle: \ No newline at end of file From 371ed047c6eb863aeb37f55056ca8e2038bd6346 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20=C4=8Ctrn=C3=A1ct?= Date: Sat, 6 Jan 2018 23:29:47 +0000 Subject: [PATCH 17/20] Add new file --- forge-gui/res/cardsfolder/upcoming/warkite_marauder.txt | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/warkite_marauder.txt diff --git a/forge-gui/res/cardsfolder/upcoming/warkite_marauder.txt b/forge-gui/res/cardsfolder/upcoming/warkite_marauder.txt new file mode 100644 index 00000000000..26e11f2a6e1 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/warkite_marauder.txt @@ -0,0 +1,9 @@ +Name:Warkite Marauder +ManaCost:1 U +Types:Creature Human Pirate +PT:2/1 +K:Flying +T:Mode$ Attacks | ValidCard$ Creature.Self | Execute$ TrigAnimate | TriggerDescription$ Whenever CARDNAME attacks, target creature defending player controls loses all abilities and has base power and toughness 0/1 until end of turn. +SVar:TrigAnimate:DB$ Animate | ValidTgts$ Creature.DefenderCtrl | TgtPrompt$ Select target creature defending player controls | Power$ 0 | Toughness$ 1 | RemoveAllAbilities$ True | IsCurse$ True +SVar:Picture:http://www.wizards.com/global/images/magic/general/warkite_marauder.jpg +Oracle:Flying\nWhenever Warkite Marauder attacks, target creature defending player controls loses all abilities and has base power and toughness 0/1 until end of turn. \ No newline at end of file From c0794aff7693010ac670d9422bb62472a3b44cd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20=C4=8Ctrn=C3=A1ct?= Date: Sat, 6 Jan 2018 23:34:40 +0000 Subject: [PATCH 18/20] Add new file --- forge-gui/res/cardsfolder/upcoming/waterknot.txt | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/waterknot.txt diff --git a/forge-gui/res/cardsfolder/upcoming/waterknot.txt b/forge-gui/res/cardsfolder/upcoming/waterknot.txt new file mode 100644 index 00000000000..925ea25d6f9 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/waterknot.txt @@ -0,0 +1,10 @@ +Name:Waterknot +ManaCost:1 U U +Types:Enchantment Aura +K:Enchant creature +A:SP$ Attach | Cost$ 1 U U | ValidTgts$ Creature | AILogic$ KeepTapped +T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefield | Execute$ TrigTap | TriggerDescription$ When CARDNAME enters the battlefield, tap enchanted creature. +SVar:TrigTap:DB$ Tap | Defined$ Enchanted +S:Mode$ Continuous | Affected$ Creature.AttachedBy | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | Description$ Enchanted creature doesn't untap during its controller's untap step. +SVar:Picture:http://www.wizards.com/global/images/magic/general/waterknot.jpg +Oracle:Enchant creature\nWhen Waterknot enters the battlefield, tap enchanted creature.\nEnchanted creature doesn't untap during its controller's untap step. \ No newline at end of file From 2f8beff993bfa8404b45efe221c520ae6e767235 Mon Sep 17 00:00:00 2001 From: Agetian Date: Sun, 7 Jan 2018 07:41:50 +0300 Subject: [PATCH 19/20] - Better implementation for ExploreEffect stack description. --- .../java/forge/game/ability/effects/ExploreEffect.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java b/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java index 32846f429a6..1fcb9d94925 100644 --- a/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java +++ b/forge-game/src/main/java/forge/game/ability/effects/ExploreEffect.java @@ -12,6 +12,7 @@ import forge.game.player.PlayerController; import forge.game.spellability.SpellAbility; import forge.game.trigger.TriggerType; import forge.game.zone.ZoneType; +import forge.util.Lang; import forge.util.TextUtil; import java.util.List; @@ -27,6 +28,7 @@ public class ExploreEffect extends SpellAbilityEffect { @Override protected String getStackDescription(SpellAbility sa) { final Card host = sa.getHostCard(); + final StringBuilder sb = new StringBuilder(); List tgt = getTargetCards(sa); List tgtNames = Lists.newArrayList(); @@ -34,10 +36,12 @@ public class ExploreEffect extends SpellAbilityEffect { tgtNames.add(c.getName()); } - String explrs = TextUtil.join(tgtNames, ","); - String explrVerb = tgtNames.size() > 1 ? "explore." : "explores."; + sb.append(Lang.joinHomogenous(tgtNames)); + sb.append(" "); + sb.append(tgtNames.size() > 1 ? "explore" : "explores"); + sb.append(". "); - return TextUtil.concatWithSpace(explrs.isEmpty() ? host.getName() : explrs, explrVerb); + return sb.toString(); } /* (non-Javadoc) From b46c0bb05d5a56b2d5a745132f9cb7fa8f294ed9 Mon Sep 17 00:00:00 2001 From: Agetian Date: Sun, 7 Jan 2018 08:08:42 +0300 Subject: [PATCH 20/20] - Several script corrections. --- forge-gui/res/cardsfolder/upcoming/river_darter.txt | 2 +- forge-gui/res/cardsfolder/upcoming/riverwise_augur.txt | 2 +- forge-gui/res/cardsfolder/upcoming/sea_legs.txt | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/forge-gui/res/cardsfolder/upcoming/river_darter.txt b/forge-gui/res/cardsfolder/upcoming/river_darter.txt index cf96545f7df..98bbcf7f88c 100644 --- a/forge-gui/res/cardsfolder/upcoming/river_darter.txt +++ b/forge-gui/res/cardsfolder/upcoming/river_darter.txt @@ -2,6 +2,6 @@ Name:River Darter ManaCost:2 U Types:Creature Merfolk Warrior PT:2/3 -K:CantBeBlockedBy Permanent.Dinosaur +K:CantBeBlockedBy Creature.Dinosaur SVar:Picture:http://www.wizards.com/global/images/magic/general/river_darter.jpg Oracle:River Darter can't be blocked by Dinosaurs. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/riverwise_augur.txt b/forge-gui/res/cardsfolder/upcoming/riverwise_augur.txt index 6aed430caf8..5cdd28de1ac 100644 --- a/forge-gui/res/cardsfolder/upcoming/riverwise_augur.txt +++ b/forge-gui/res/cardsfolder/upcoming/riverwise_augur.txt @@ -2,7 +2,7 @@ Name:Riverwise Augur ManaCost:3 U Types:Creature Merfolk Wizard PT:2/2 -T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ When CARDNAME enters the battlefield, draw a card. +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ When CARDNAME enters the battlefield, draw three cards, then put two cards from your hand on top of your library in any order. SVar:TrigDraw:DB$Draw | Defined$ You | NumCards$ 3 | SubAbility$ DBChangeZone SVar:DBChangeZone:DB$ChangeZone | Origin$ Hand | Destination$ Library | ChangeNum$ 2 | Mandatory$ True SVar:Picture:http://www.wizards.com/global/images/magic/general/riverwise_augur.jpg diff --git a/forge-gui/res/cardsfolder/upcoming/sea_legs.txt b/forge-gui/res/cardsfolder/upcoming/sea_legs.txt index 4f2efa463de..ab1af8d4b84 100644 --- a/forge-gui/res/cardsfolder/upcoming/sea_legs.txt +++ b/forge-gui/res/cardsfolder/upcoming/sea_legs.txt @@ -5,7 +5,7 @@ K:Flash K:Enchant creature A:SP$ Attach | Cost$ U | ValidTgts$ Creature | AILogic$ SpecificCard S:Mode$ Continuous | Affected$ Creature.EnchantedBy+Pirate | AddToughness$ 2 | Description$ Enchanted creature gets +0/+2 as long as it's a Pirate. Otherwise, it gets -2/-0. -S:Mode$ Continuous | Affected$ Creature.EnchantedBy+nonZombie | AddPower$ -2 +S:Mode$ Continuous | Affected$ Creature.EnchantedBy+nonPirate | AddPower$ -2 DeckNeeds:Type$Pirate SVar:Picture:http://www.wizards.com/global/images/magic/general/sea_legs.jpg Oracle:Flash\nEnchant creature\nEnchanted creature gets +0/+2 as long as it's a Pirate. Otherwise, it gets -2/-0. \ No newline at end of file