From 4e1b7e886fad078a0f01d4fe6c5f0a2b86401dc1 Mon Sep 17 00:00:00 2001 From: swordshine Date: Thu, 5 Dec 2019 09:51:33 +0800 Subject: [PATCH 1/4] Update scripts --- forge-gui/res/cardsfolder/k/kayas_wrath.txt | 3 ++- forge-gui/res/cardsfolder/upcoming/alirios_enraptured.txt | 5 ++--- forge-gui/res/cardsfolder/upcoming/arena_trickster.txt | 2 +- forge-gui/res/cardsfolder/upcoming/ashioks_erasure.txt | 8 ++++---- forge-gui/res/cardsfolder/upcoming/aspect_of_lamprey.txt | 2 +- forge-gui/res/cardsfolder/upcoming/dreadful_apathy.txt | 3 +-- forge-gui/res/cardsfolder/upcoming/hydras_growth.txt | 2 +- forge-gui/res/cardsfolder/upcoming/moss_viper.txt | 2 +- 8 files changed, 13 insertions(+), 14 deletions(-) diff --git a/forge-gui/res/cardsfolder/k/kayas_wrath.txt b/forge-gui/res/cardsfolder/k/kayas_wrath.txt index b369d84ce2c..78f0dee2714 100644 --- a/forge-gui/res/cardsfolder/k/kayas_wrath.txt +++ b/forge-gui/res/cardsfolder/k/kayas_wrath.txt @@ -2,7 +2,8 @@ Name:Kaya's Wrath ManaCost:W W B B Types:Sorcery A:SP$ DestroyAll | Cost$ W W B B | ValidCards$ Creature | RememberDestroyed$ True | SubAbility$ DBGainLife | SpellDescription$ Destroy all creatures. You gain life equal to the number of creatures you controlled that were destroyed this way. -SVar:DBGainLife:DB$ GainLife | LifeAmount$ X | References$ X +SVar:DBGainLife:DB$ GainLife | LifeAmount$ X | References$ X | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:X:RememberedLKI$FilterControlledByYou_Number$1 DeckHas:Ability$LifeGain Oracle:Destroy all creatures. You gain life equal to the number of creatures you controlled that were destroyed this way. diff --git a/forge-gui/res/cardsfolder/upcoming/alirios_enraptured.txt b/forge-gui/res/cardsfolder/upcoming/alirios_enraptured.txt index 148e314ca81..f2051fde15b 100644 --- a/forge-gui/res/cardsfolder/upcoming/alirios_enraptured.txt +++ b/forge-gui/res/cardsfolder/upcoming/alirios_enraptured.txt @@ -3,9 +3,8 @@ ManaCost:2 U Types:Legendary Creature Human PT:2/3 K:CARDNAME enters the battlefield tapped. -S:Mode$ Continuous | Affected$ Card.Self | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | CheckSVar$ X | SVarCompare$ GE1 | References$ X | Description$ CARDNAME doesn't untap during your untap step if you control a Reflection. -SVar:X:Count$Valid Reflection.YouCtrl +S:Mode$ Continuous | Affected$ Card.Self | AddHiddenKeyword$ CARDNAME doesn't untap during your untap step. | IsPresent$ Reflection.YouCtrl | Description$ CARDNAME doesn't untap during your untap step if you control a Reflection. T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters the battlefield, create a 3/2 blue Reflection creature token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ u_3_2_reflection | TokenOwner$ You | LegacyImage$ u 3 2 reflection thb SVar:Picture:http://www.wizards.com/global/images/magic/general/alirios_enraptured.jpg -Oracle:Alirios, Enraptured enters the battlefield tapped.\nAlirios doesn't untap during your untap step if you control a Reflection.\nWhen Alirios enters the battlefield, create a 3/2 blue Reflection creature token. \ No newline at end of file +Oracle:Alirios, Enraptured enters the battlefield tapped.\nAlirios doesn't untap during your untap step if you control a Reflection.\nWhen Alirios enters the battlefield, create a 3/2 blue Reflection creature token. diff --git a/forge-gui/res/cardsfolder/upcoming/arena_trickster.txt b/forge-gui/res/cardsfolder/upcoming/arena_trickster.txt index 32e266256c5..415d1842627 100644 --- a/forge-gui/res/cardsfolder/upcoming/arena_trickster.txt +++ b/forge-gui/res/cardsfolder/upcoming/arena_trickster.txt @@ -6,4 +6,4 @@ T:Mode$ SpellCast | ValidCard$ Card | ValidActivatingPlayer$ You | ActivatorThis SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 DeckHas:Ability$Counters SVar:Picture:http://www.wizards.com/global/images/magic/general/arena_trickster.jpg -Oracle:Whenever you cast your first spell during each opponent’s turn, put a +1/+1 counter on Arena Trickster. \ No newline at end of file +Oracle:Whenever you cast your first spell during each opponent's turn, put a +1/+1 counter on Arena Trickster. diff --git a/forge-gui/res/cardsfolder/upcoming/ashioks_erasure.txt b/forge-gui/res/cardsfolder/upcoming/ashioks_erasure.txt index 76cce1686a1..a79b21b15eb 100644 --- a/forge-gui/res/cardsfolder/upcoming/ashioks_erasure.txt +++ b/forge-gui/res/cardsfolder/upcoming/ashioks_erasure.txt @@ -1,12 +1,12 @@ -Name: Ashiok's Erasure -ManaCost: 2 U U +Name:Ashiok's Erasure +ManaCost:2 U U Types:Enchantment K:Flash T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigExile | TriggerDescription$ When CARDNAME enters the battlefield, exile target spell. S:Mode$ CantBeCast | ValidCard$ Card.nonLand+sharesNameWith Remembered.ExiledWithSource | Caster$ Opponent | Description$ Your opponents can't cast spells with the same name as the card exiled by CARDNAME. -T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigBounce | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME leaves the battlefield, return the exiled card to its owner’s hand. +T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Any | ValidCard$ Card.Self | Execute$ TrigBounce | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME leaves the battlefield, return the exiled card to its owner's hand. SVar:TrigExile:DB$ChangeZone | TargetType$ Spell | ValidTgts$ Card | TgtZone$ Stack | Origin$ Stack | Fizzle$ True | Mandatory$ True | Destination$ Exile | IsCurse$ True | TgtPrompt$ Choose target spell | RememberChanged$ True SVar:TrigBounce:DB$ChangeZone | Origin$ Exile | Destination$ Hand | Defined$ Remembered | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:Picture:http://www.wizards.com/global/images/magic/general/ashioks_erasure.jpg -Oracle:Flash\nWhen Ashiok’s Erasure enters the battlefield, exile target spell.\nYour opponents can't cast spells with the same name as the exiled card.\nWhen Ashiok’s Erasure leaves the battlefield, return the exiled card to its owner’s hand. \ No newline at end of file +Oracle:Flash\nWhen Ashiok's Erasure enters the battlefield, exile target spell.\nYour opponents can't cast spells with the same name as the exiled card.\nWhen Ashiok's Erasure leaves the battlefield, return the exiled card to its owner's hand. diff --git a/forge-gui/res/cardsfolder/upcoming/aspect_of_lamprey.txt b/forge-gui/res/cardsfolder/upcoming/aspect_of_lamprey.txt index 4ebb6244108..487e02b1398 100644 --- a/forge-gui/res/cardsfolder/upcoming/aspect_of_lamprey.txt +++ b/forge-gui/res/cardsfolder/upcoming/aspect_of_lamprey.txt @@ -8,4 +8,4 @@ SVar:TrigDiscard:DB$Discard | ValidTgts$ Opponent | TgtPrompt$ Select an opponen S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddKeyword$ Lifelink | Description$ Enchanted creature has lifelink. SVar:NonStackingAttachEffect:True SVar:Picture:http://www.wizards.com/global/images/magic/general/aspect_of_lamprey.jpg -Oracle:Enchant creature you control\nWhen Aspect of Lamprey enters the battlefield, target opponent discards two cards.\nEnchanted creature has lifelink. \ No newline at end of file +Oracle:Enchant creature you control\nWhen Aspect of Lamprey enters the battlefield, target opponent discards two cards.\nEnchanted creature has lifelink. diff --git a/forge-gui/res/cardsfolder/upcoming/dreadful_apathy.txt b/forge-gui/res/cardsfolder/upcoming/dreadful_apathy.txt index e82acf08cca..8fc28da5ffe 100644 --- a/forge-gui/res/cardsfolder/upcoming/dreadful_apathy.txt +++ b/forge-gui/res/cardsfolder/upcoming/dreadful_apathy.txt @@ -7,5 +7,4 @@ S:Mode$ Continuous | Affected$ Creature.EnchantedBy | AddHiddenKeyword$ CARDNAME A:AB$ ChangeZone | Cost$ 2 W | Defined$ Enchanted | Origin$ Battlefield | Destination$ Exile | SpellDescription$ Exile enchanted creature. SVar:NonStackingAttachEffect:True SVar:Picture:http://www.wizards.com/global/images/magic/general/dreadful_apathy.jpg -Oracle:Enchant creature\nEnchanted creature can't attack or block. -\n{2}{W}: Exile enchanted creature. \ No newline at end of file +Oracle:Enchant creature\nEnchanted creature can't attack or block.\n{2}{W}: Exile enchanted creature. diff --git a/forge-gui/res/cardsfolder/upcoming/hydras_growth.txt b/forge-gui/res/cardsfolder/upcoming/hydras_growth.txt index f903ff3bb7f..0695350dcd8 100644 --- a/forge-gui/res/cardsfolder/upcoming/hydras_growth.txt +++ b/forge-gui/res/cardsfolder/upcoming/hydras_growth.txt @@ -8,4 +8,4 @@ SVar:TrigPutCounter:DB$ PutCounter | Defined$ Enchanted | CounterType$ P1P1 | Co T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ DBPump | TriggerDescription$ At the beginning of your upkeep, double the number of +1/+1 counters on enchanted creature. SVar:DBPump:DB$ MultiplyCounter | Defined$ Enchanted | CounterType$ P1P1 DeckHas:Ability$Counters -Oracle:Enchant creature\nWhen Hydra’s Growth enters the battlefield, put a +1/+1 counter on enchanted creature.\nAt the beginning of your upkeep, double the number of +1/+1 counters on enchanted creature. \ No newline at end of file +Oracle:Enchant creature\nWhen Hydra's Growth enters the battlefield, put a +1/+1 counter on enchanted creature.\nAt the beginning of your upkeep, double the number of +1/+1 counters on enchanted creature. diff --git a/forge-gui/res/cardsfolder/upcoming/moss_viper.txt b/forge-gui/res/cardsfolder/upcoming/moss_viper.txt index 573380c0dee..a3cfbee71d0 100644 --- a/forge-gui/res/cardsfolder/upcoming/moss_viper.txt +++ b/forge-gui/res/cardsfolder/upcoming/moss_viper.txt @@ -3,4 +3,4 @@ ManaCost:G Types:Creature Snake PT:1/1 K:Deathtouch -Oracle:Deathtouch \ No newline at end of file +Oracle:Deathtouch From 43dc6d35c0b582990d8a514c66ddb6877a5c5a60 Mon Sep 17 00:00:00 2001 From: Sol Date: Mon, 9 Dec 2019 03:49:50 +0000 Subject: [PATCH 2/4] Update iroas_god_of_victory.txt --- forge-gui/res/cardsfolder/i/iroas_god_of_victory.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/i/iroas_god_of_victory.txt b/forge-gui/res/cardsfolder/i/iroas_god_of_victory.txt index 4bfab65adf9..d72d72120f8 100644 --- a/forge-gui/res/cardsfolder/i/iroas_god_of_victory.txt +++ b/forge-gui/res/cardsfolder/i/iroas_god_of_victory.txt @@ -6,7 +6,7 @@ K:Indestructible S:Mode$ Continuous | Affected$ Card.Self | RemoveType$ Creature | RemoveCreatureTypes$ True | CheckSVar$ X | SVarCompare$ LT7 | References$ X | Description$ As long as your devotion to red and white is less than seven, CARDNAME isn't a creature. SVar:X:Count$DevotionDual.Red.White S:Mode$ Continuous | Affected$ Creature.YouCtrl | AddKeyword$ Menace | Description$ Creatures you control have menace. -R:Event$ DamageDone | Prevent$ True | ValidTarget$ Creature.attacking+YouCtrl | Description$ Prevent all damage that would be dealt to attacking creatures you control. +R:Event$ DamageDone | ActiveZones$ Battlefield | Prevent$ True | ValidTarget$ Creature.attacking+YouCtrl | Description$ Prevent all damage that would be dealt to attacking creatures you control. SVar:BuffedBy:Permanent.White,Permanent.Red SVar:Picture:http://www.wizards.com/global/images/magic/general/iroas_god_of_victory.jpg Oracle:Indestructible\nAs long as your devotion to red and white is less than seven, Iroas isn't a creature.\nCreatures you control have menace.\nPrevent all damage that would be dealt to attacking creatures you control. From 9f2304b1a5244e6bfe7a83b630fba0f034e7955c Mon Sep 17 00:00:00 2001 From: Agetian Date: Tue, 10 Dec 2019 19:35:10 +0300 Subject: [PATCH 3/4] - Set ExiledWith for the LKI copies (fixes Colfenor's Plans) --- forge-game/src/main/java/forge/game/card/CardUtil.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/forge-game/src/main/java/forge/game/card/CardUtil.java b/forge-game/src/main/java/forge/game/card/CardUtil.java index 48849e677d2..8365f7cb3b0 100644 --- a/forge-game/src/main/java/forge/game/card/CardUtil.java +++ b/forge-game/src/main/java/forge/game/card/CardUtil.java @@ -296,6 +296,8 @@ public final class CardUtil { newCopy.setCastSA(in.getCastSA()); newCopy.setCastFrom(in.getCastFrom()); + newCopy.setExiledWith(in.getExiledWith()); + return newCopy; } From 12f76827e95af704b20ff911378ed7102a61528e Mon Sep 17 00:00:00 2001 From: Agetian Date: Tue, 10 Dec 2019 19:51:41 +0300 Subject: [PATCH 4/4] - Added puzzle PS_ELD8. --- forge-gui/res/puzzle/PS_ELD8.pzl | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 forge-gui/res/puzzle/PS_ELD8.pzl diff --git a/forge-gui/res/puzzle/PS_ELD8.pzl b/forge-gui/res/puzzle/PS_ELD8.pzl new file mode 100644 index 00000000000..cbb5ec43f6e --- /dev/null +++ b/forge-gui/res/puzzle/PS_ELD8.pzl @@ -0,0 +1,21 @@ +[metadata] +Name:Possibility Storm - Throne of Eldraine #08 +URL:http://www.possibilitystorm.com/wp-content/uploads/2019/12/139.-ELD8.jpg +Goal:Win +Turns:1 +Difficulty:Mythic +Description:Win this turn. Assume your opponent has many cards in their library, cards drawn by either player are irrelevant, both graveyards are empty, and you have 20 life. Your opponent has a Plummet in hand and can cast it. The solution must satisfy all possible opponent choices. You previously turned your Hypnotic Sprite into an Elk. +[state] +humanlife=20 +ailife=2 +turn=1 +activeplayer=human +activephase=MAIN1 +humanhand=Kraul Harpooner;Lovestruck Beast;Lucky Clover;Brazen Borrower;Rosethorn Acolyte +humanlibrary=Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt +humanbattlefield=Hypnotic Sprite|Id:1;Oko, Thief of Crowns|Counters:LOYALTY=5;Ob Nixilis, the Hate-Twisted|Counters:LOYALTY=1;Watery Grave|NoETBTrigs;Watery Grave|NoETBTrigs;Watery Grave|NoETBTrigs;Watery Grave|NoETBTrigs;Breeding Pool|NoETBTrigs;Breeding Pool|NoETBTrigs;Breeding Pool|NoETBTrigs;Breeding Pool|NoETBTrigs +aihand=Plummet +ailibrary=Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt;Opt +aibattlefield=Midnight Reaper;Teyo's Lightshield|Counters:P1P1=1;Teyo's Lightshield|Counters:P1P1=1;Teyo's Lightshield|Counters:P1P1=1;Teyo's Lightshield|Counters:P1P1=1;Savage Gorger|Counters:P1P1=4 +humanprecast=Oko, Thief of Crowns:2->1 +aipersistentmana=C G