From a8e1e7d450a1b1d0ae1124c2b707ea19e2500a9e Mon Sep 17 00:00:00 2001 From: Northmoc Date: Tue, 6 Sep 2022 18:51:33 -0400 Subject: [PATCH 1/4] mace_of_disruption.txt --- .../res/cardsfolder/upcoming/mace_of_disruption.txt | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/mace_of_disruption.txt diff --git a/forge-gui/res/cardsfolder/upcoming/mace_of_disruption.txt b/forge-gui/res/cardsfolder/upcoming/mace_of_disruption.txt new file mode 100644 index 00000000000..6b7d76f3878 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/mace_of_disruption.txt @@ -0,0 +1,11 @@ +Name:Mace of Disruption +ManaCost:1 W +Types:Artifact Equipment +S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddToughness$ 2 | AddKeyword$ Protection from Demons & Protection from Devils | Description$ Equipped creature gets +0/+2 and has protection from Demons and from Devils. +T:Mode$ Attacks | ValidCard$ Creature.EquippedBy | Execute$ TrigEffect | TriggerDescription$ Whenever equipped creature attacks, it perpetually gets +1/+0 if it has the same name as another creature you control or a creature card in your graveyard. +SVar:TrigEffect:DB$ Effect | ConditionCheckSVar$ X | RememberObjects$ Equipped | Name$ Mace of Disruption's Perpetual Effect | Duration$ Permanent | StaticAbilities$ PerpetualP1P0 +SVar:PerpetualP1P0:Mode$ Continuous | Affected$ Card.IsRemembered | AddPower$ 1 | EffectZone$ Command | AffectedZone$ Battlefield,Hand,Graveyard,Exile,Stack,Library,Command | Description$ This creature perpetually gets +1/+0. +K:Equip:1 +SVar:X:Count$Valid Creature.!EquippedBy+YouCtrl+sharesNameWith Equipped/Plus.Y +SVar:Y:Count$ValidGraveyard Creature.YouOwn+sharesNameWith Equipped +Oracle:Equipped creature gets +0/+2 and has protection from Demons and from Devils. Whenever equipped creature attacks, it perpetually gets +1/+0 if it has the same name as another creature you control or a creature card in your graveyard.\nEquip {1} From 836d4504a1f5e9bc7664e869449f7572e4ca9a81 Mon Sep 17 00:00:00 2001 From: Northmoc Date: Tue, 6 Sep 2022 19:07:16 -0400 Subject: [PATCH 2/4] tenacious_pup.txt --- forge-gui/res/cardsfolder/t/tenacious_pup.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-gui/res/cardsfolder/t/tenacious_pup.txt b/forge-gui/res/cardsfolder/t/tenacious_pup.txt index 17dc6c49442..a47cd61322e 100644 --- a/forge-gui/res/cardsfolder/t/tenacious_pup.txt +++ b/forge-gui/res/cardsfolder/t/tenacious_pup.txt @@ -7,7 +7,7 @@ SVar:TrigGainLife:DB$ GainLife | LifeAmount$ 1 | SubAbility$ DBDelayedTrigger SVar:DBDelayedTrigger:DB$ DelayedTrigger | Execute$ TrigAddAPI | Mode$ SpellCast | ValidCard$ Creature | ValidActivatingPlayer$ You | TriggerDescription$ When you cast your next creature spell, that creature enters the battlefield with an additional +1/+1 counter, trample counter, and vigilance counter on it. SVar:TrigAddAPI:DB$ Effect | RememberObjects$ TriggeredCard | ForgetOnMoved$ Stack | ReplacementEffects$ ReplaceEnter SVar:ReplaceEnter:Event$ Moved | ValidCard$ Card.IsRemembered | Destination$ Battlefield | ReplaceWith$ AddExtraCounter | ReplacementResult$ Updated | Description$ That creature enters the battlefield with an additional +1/+1 counter, trample counter, and vigilance counter on it. -SVar:AddExtraCounter:DB$ PutCounter | ETB$ True | Defined$ ReplacedCard | CounterTypes$ P1P1,Trample,Vigilance | CounterNum$ 1 | SubAbility$ DBExile +SVar:AddExtraCounter:DB$ PutCounter | ETB$ True | Defined$ ReplacedCard | CounterTypes$ P1P1,Trample,Vigilance | CounterNum$ 1 | SubAbility$ DBExile SVar:DBExile:DB$ ChangeZone | Defined$ Self | Origin$ Command | Destination$ Exile DeckHas:Ability$LifeGain|Counters Oracle:When Tenacious Pup enters the battlefield, you gain 1 life. When you cast your next creature spell, that creature enters the battlefield with an additional +1/+1 counter, trample counter, and vigilance counter on it. From 3cc9e823a246b96fed159001834be33ad7b55eb6 Mon Sep 17 00:00:00 2001 From: Northmoc Date: Wed, 7 Sep 2022 16:26:32 -0400 Subject: [PATCH 3/4] Card.keywordsToText() better handle keywords with internal caps --- forge-game/src/main/java/forge/game/card/Card.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/forge-game/src/main/java/forge/game/card/Card.java b/forge-game/src/main/java/forge/game/card/Card.java index b1f391abeb6..77416ff2ef1 100644 --- a/forge-game/src/main/java/forge/game/card/Card.java +++ b/forge-game/src/main/java/forge/game/card/Card.java @@ -2269,7 +2269,7 @@ public class Card extends GameEntity implements Comparable, IHasSVars { keyword = keyword.replace("Strike", "strike"); } sb.append(i !=0 && sb.length() !=0 ? ", " : ""); - sb.append(i > 0 && sb.length() !=0 ? keyword.toLowerCase() : keyword); + sb.append(i > 0 && sb.length() !=0 ? StringUtils.uncapitalize(keyword) : keyword); } if (sbLong.length() > 0) { sbLong.append("\r\n"); From 0e3a258799a6bce3077bf84ea4717346351ebcf4 Mon Sep 17 00:00:00 2001 From: Northmoc Date: Wed, 7 Sep 2022 16:26:44 -0400 Subject: [PATCH 4/4] liara_of_the_flaming_fist.txt --- .../upcoming/liara_of_the_flaming_fist.txt | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 forge-gui/res/cardsfolder/upcoming/liara_of_the_flaming_fist.txt diff --git a/forge-gui/res/cardsfolder/upcoming/liara_of_the_flaming_fist.txt b/forge-gui/res/cardsfolder/upcoming/liara_of_the_flaming_fist.txt new file mode 100644 index 00000000000..4e6c176ab29 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/liara_of_the_flaming_fist.txt @@ -0,0 +1,11 @@ +Name:Liara of the Flaming Fist +ManaCost:R W +Types:Legendary Creature Human Soldier +PT:2/2 +T:Mode$ Phase | Phase$ BeginCombat | TriggerZones$ Battlefield | Execute$ TrigRepeatEach | TriggerDescription$ At the beginning of each combat, each creature you control gets +1/+1 until end of turn if it has the same name as another creature you control or a creature card in your graveyard. +SVar:TrigRepeatEach:DB$ RepeatEach | RepeatCards$ Creature.YouCtrl | RepeatSubAbility$ DBPump +SVar:DBPump:DB$ Pump | Defined$ Remembered | NumAtt$ +1 | NumDef$ +1 | ConditionCheckSVar$ X +SVar:X:Count$Valid Creature.IsNotRemembered+YouCtrl+sharesNameWith Remembered/Plus.Y +SVar:Y:Count$ValidGraveyard Creature.YouOwn+sharesNameWith Remembered +A:AB$ Pump | Cost$ 1 R W | ValidTgts$ Creature.Other+nonToken+YouCtrl | TgtPrompt$ Select another target nontoken creature you control | KW$ First Strike & Double team | SorcerySpeed$ True | GameActivationLimit$ 1 | SpellDescription$ Another target nontoken creature you control gains first strike and double team until end of turn. Activate only as a sorcery and only once. +Oracle:At the beginning of each combat, each creature you control gets +1/+1 until end of turn if it has the same name as another creature you control or a creature card in your graveyard.\n{1}{R}{W}: Another target nontoken creature you control gains first strike and double team until end of turn. Activate only as a sorcery and only once.