diff --git a/forge-game/src/main/java/forge/game/keyword/Keyword.java b/forge-game/src/main/java/forge/game/keyword/Keyword.java index 15373f057a5..fa8d31a635f 100644 --- a/forge-game/src/main/java/forge/game/keyword/Keyword.java +++ b/forge-game/src/main/java/forge/game/keyword/Keyword.java @@ -37,7 +37,7 @@ public enum Keyword { BUYBACK("Buyback", KeywordWithCost.class, false, "You may pay an additional %s as you cast this spell. If you do, put it into your hand instead of your graveyard as it resolves."), CASCADE("Cascade", SimpleKeyword.class, false, "When you cast this spell, exile cards from the top of your library until you exile a nonland card whose mana value is less than this spell's mana value. You may cast that spell without paying its mana cost if its mana value is less than this spell's mana value. Then put all cards exiled this way that weren't cast on the bottom of your library in a random order."), CASUALTY("Casualty", KeywordWithAmount.class, false, "As you cast this spell, you may sacrifice a creature with power %1$d or greater. When you do, copy this spell."), - CHAMPION("Champion", KeywordWithType.class, false, "When this permanent enters the battlefield, sacrifice it unless you exile another %s you control. When this permanent leaves the battlefield, return the exiled card to the battlefield under its owner’s control."), + CHAMPION("Champion", KeywordWithType.class, false, "When this permanent enters the battlefield, sacrifice it unless you exile another %s you control. When this permanent leaves the battlefield, return the exiled card to the battlefield under its owner's control."), CHANGELING("Changeling", SimpleKeyword.class, true, "This card is every creature type."), CHOOSE_A_BACKGROUND("Choose a Background", Partner.class, true, "You can have a Background as a second commander."), CIPHER("Cipher", SimpleKeyword.class, true, "Then you may exile this spell card encoded on a creature you control. Whenever that creature deals combat damage to a player, its controller may cast a copy of the encoded card without paying its mana cost."), diff --git a/forge-gui/res/cardsfolder/c/citadel_siege.txt b/forge-gui/res/cardsfolder/c/citadel_siege.txt index 13491132f98..81a39561060 100644 --- a/forge-gui/res/cardsfolder/c/citadel_siege.txt +++ b/forge-gui/res/cardsfolder/c/citadel_siege.txt @@ -2,11 +2,12 @@ Name:Citadel Siege ManaCost:2 W W Types:Enchantment K:ETBReplacement:Other:SiegeChoice -SVar:SiegeChoice:DB$ GenericChoice | Choices$ Khans,Dragons | Defined$ You | SetChosenMode$ True | AILogic$ Dragons | ShowChoice$ ExceptSelf | SpellDescription$ As CARDNAME enters the battlefield, choose Khans or Dragons. Khans — At the beginning of combat on your turn, put two +1/+1 counters on target creature you control. Dragons — At the beginning of combat on each opponent's turn, tap target creature that player controls. +SVar:SiegeChoice:DB$ GenericChoice | Choices$ Khans,Dragons | Defined$ You | SetChosenMode$ True | AILogic$ Dragons | ShowChoice$ ExceptSelf | SpellDescription$ As CARDNAME enters the battlefield, choose Khans or Dragons.,,,• Khans — At the beginning of combat on your turn, put two +1/+1 counters on target creature you control.,,,• Dragons — At the beginning of combat on each opponent's turn, tap target creature that player controls. SVar:Khans:DB$ Animate | Defined$ Self | Triggers$ KhansTrigger | Duration$ Permanent | SpellDescription$ Khans SVar:KhansTrigger:Mode$ Phase | Phase$ BeginCombat | TriggerZones$ Battlefield | ValidPlayer$ You | Execute$ Boost | TriggerDescription$ At the beginning of combat on your turn, put two +1/+1 counters on target creature you control. SVar:Boost:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 | CounterNum$ 2 SVar:Dragons:DB$ Animate | Defined$ Self | Triggers$ DragonsTrigger | Duration$ Permanent | SpellDescription$ Dragons SVar:DragonsTrigger:Mode$ Phase | Phase$ BeginCombat | TriggerZones$ Battlefield | ValidPlayer$ Opponent | Execute$ TapCreature | TriggerDescription$ At the beginning of combat on each opponent's turn, tap target creature that player controls. SVar:TapCreature:DB$ Tap | ValidTgts$ Creature.ActivePlayerCtrl | TgtPrompt$ Choose target creature the active player controls. +DeckHas:Ability$Counters Oracle:As Citadel Siege enters the battlefield, choose Khans or Dragons.\n• Khans — At the beginning of combat on your turn, put two +1/+1 counters on target creature you control.\n• Dragons — At the beginning of combat on each opponent's turn, tap target creature that player controls. diff --git a/forge-gui/res/cardsfolder/f/frontier_siege.txt b/forge-gui/res/cardsfolder/f/frontier_siege.txt index 20d394dad90..2c81e4c787a 100644 --- a/forge-gui/res/cardsfolder/f/frontier_siege.txt +++ b/forge-gui/res/cardsfolder/f/frontier_siege.txt @@ -2,7 +2,7 @@ Name:Frontier Siege ManaCost:3 G Types:Enchantment K:ETBReplacement:Other:SiegeChoice -SVar:SiegeChoice:DB$ GenericChoice | Choices$ Khans,Dragons | Defined$ You | SetChosenMode$ True | AILogic$ Khans | ShowChoice$ ExceptSelf | SpellDescription$ As CARDNAME enters the battlefield, choose Khans or Dragons. Khans — At the beginning of each of your main phases, add {G}{G}. Dragons — Whenever a creature with flying enters the battlefield under your control, you may have it fight target creature you don't control. +SVar:SiegeChoice:DB$ GenericChoice | Choices$ Khans,Dragons | Defined$ You | SetChosenMode$ True | AILogic$ Khans | ShowChoice$ ExceptSelf | SpellDescription$ As CARDNAME enters the battlefield, choose Khans or Dragons.,,,• Khans — At the beginning of each of your main phases, add {G}{G}.,,,• Dragons — Whenever a creature with flying enters the battlefield under your control, you may have it fight target creature you don't control. SVar:Khans:DB$ Animate | Defined$ Self | Triggers$ KhansTrigger | Duration$ Permanent | SpellDescription$ Khans SVar:KhansTrigger:Mode$ Phase | Phase$ Main1,Main2 | TriggerZones$ Battlefield | ValidPlayer$ You | Execute$ ManaGain | TriggerDescription$ At the beginning of each of your main phases, add {G}{G}. SVar:ManaGain:DB$ Mana | Produced$ G G diff --git a/forge-gui/res/cardsfolder/m/mirrodin_besieged.txt b/forge-gui/res/cardsfolder/m/mirrodin_besieged.txt index 2193dff9456..323b5254b9b 100644 --- a/forge-gui/res/cardsfolder/m/mirrodin_besieged.txt +++ b/forge-gui/res/cardsfolder/m/mirrodin_besieged.txt @@ -2,7 +2,7 @@ Name:Mirrodin Besieged ManaCost:2 U Types:Enchantment K:ETBReplacement:Other:SiegeChoice -SVar:SiegeChoice:DB$ GenericChoice | Choices$ Mirran,Phyrexian | Defined$ You | SetChosenMode$ True | AILogic$ Mirran | ShowChoice$ ExceptSelf | SpellDescription$ As CARDNAME enters the battlefield, choose Mirran or Phyrexian.Mirran - Whenever you cast an artifact spell, create a 1/1 colorless Myr artifact creature token. Phyrexian - At the beginning of your end step, draw a card, then discard a card. Then if there are fifteen or more artifact cards in your graveyard, target opponent loses the game. +SVar:SiegeChoice:DB$ GenericChoice | Choices$ Mirran,Phyrexian | Defined$ You | SetChosenMode$ True | AILogic$ Mirran | ShowChoice$ ExceptSelf | SpellDescription$ As CARDNAME enters the battlefield, choose Mirran or Phyrexian.,,,• Mirran - Whenever you cast an artifact spell, create a 1/1 colorless Myr artifact creature token.,,,• Phyrexian - At the beginning of your end step, draw a card, then discard a card. Then if there are fifteen or more artifact cards in your graveyard, target opponent loses the game. SVar:Mirran:DB$ Animate | Defined$ Self | Triggers$ MirranTrigger | Duration$ Permanent | SpellDescription$ Mirran SVar:MirranTrigger:Mode$ SpellCast | ValidCard$ Artifact | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever you cast an artifact spell, create a 1/1 colorless Myr artifact creature token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_1_1_a_myr | TokenOwner$ You @@ -12,5 +12,6 @@ SVar:Filter:DB$ Draw | Defined$ You | NumCards$ 1 | SubAbility$ DBDiscard SVar:DBDiscard:DB$ Discard | Defined$ You | Mode$ TgtChoose | NumCards$ 1 | SubAbility$ DBLose SVar:DBLose:DB$ LosesGame | ValidTgts$ Opponent | ConditionCheckSVar$ CheckGraveyard | ConditionSVarCompare$ GE15 SVar:CheckGraveyard:Count$ValidGraveyard Card.Artifact+YouOwn -DeckHas:Ability$Token +DeckHas:Ability$Token|Discard & Type$Myr|Artifact +DeckHints:Type$Artifact Oracle:As Mirrodin Besieged enters the battlefield, choose Mirran or Phyrexian.\n• Mirran — Whenever you cast an artifact spell, create a 1/1 colorless Myr artifact creature token.\n• Phyrexian — At the beginning of your end step, draw a card, then discard a card. Then if there are fifteen or more artifact cards in your graveyard, target opponent loses the game. diff --git a/forge-gui/res/cardsfolder/m/monastery_siege.txt b/forge-gui/res/cardsfolder/m/monastery_siege.txt index 3c25666e9af..affaaa4bd0b 100644 --- a/forge-gui/res/cardsfolder/m/monastery_siege.txt +++ b/forge-gui/res/cardsfolder/m/monastery_siege.txt @@ -2,7 +2,7 @@ Name:Monastery Siege ManaCost:2 U Types:Enchantment K:ETBReplacement:Other:SiegeChoice -SVar:SiegeChoice:DB$ GenericChoice | Choices$ Khans,Dragons | Defined$ You | SetChosenMode$ True | AILogic$ Khans | ShowChoice$ ExceptSelf | SpellDescription$ As CARDNAME enters the battlefield, choose Khans or Dragons. Khans — At the beginning of your draw step, draw an additional card, then discard a card. Dragons — Spells your opponents cast that target you or a permanent you control cost {2} more to cast. +SVar:SiegeChoice:DB$ GenericChoice | Choices$ Khans,Dragons | Defined$ You | SetChosenMode$ True | AILogic$ Khans | ShowChoice$ ExceptSelf | SpellDescription$ As CARDNAME enters the battlefield, choose Khans or Dragons.,,,• Khans — At the beginning of your draw step, draw an additional card, then discard a card.,,,• Dragons — Spells your opponents cast that target you or a permanent you control cost {2} more to cast. SVar:Khans:DB$ Animate | Defined$ Self | Triggers$ KhansTrigger | Duration$ Permanent | SpellDescription$ Khans SVar:KhansTrigger:Mode$ Phase | Phase$ Draw | TriggerZones$ Battlefield | ValidPlayer$ You | Execute$ Filter | TriggerDescription$ At the beginning of your draw step, draw an additional card, then discard a card. SVar:Filter:DB$ Draw | Defined$ You | NumCards$ 1 | SubAbility$ DBDiscard diff --git a/forge-gui/res/cardsfolder/o/outpost_siege.txt b/forge-gui/res/cardsfolder/o/outpost_siege.txt index 8f5ce346ab8..b9c93a1a61f 100644 --- a/forge-gui/res/cardsfolder/o/outpost_siege.txt +++ b/forge-gui/res/cardsfolder/o/outpost_siege.txt @@ -2,7 +2,7 @@ Name:Outpost Siege ManaCost:3 R Types:Enchantment K:ETBReplacement:Other:SiegeChoice -SVar:SiegeChoice:DB$ GenericChoice | Choices$ Khans,Dragons | Defined$ You | SetChosenMode$ True | AILogic$ Khans | ShowChoice$ ExceptSelf | SpellDescription$ As CARDNAME enters the battlefield, choose Khans or Dragons. Khans — At the beginning of your upkeep, exile the top card of your library. Until end of turn, you may play that card. Dragons — Whenever a creature you control leaves the battlefield, CARDNAME deals 1 damage to any target. +SVar:SiegeChoice:DB$ GenericChoice | Choices$ Khans,Dragons | Defined$ You | SetChosenMode$ True | AILogic$ Khans | ShowChoice$ ExceptSelf | SpellDescription$ As CARDNAME enters the battlefield, choose Khans or Dragons.,,,• Khans — At the beginning of your upkeep, exile the top card of your library. Until end of turn, you may play that card.,,,• Dragons — Whenever a creature you control leaves the battlefield, CARDNAME deals 1 damage to any target. SVar:Khans:DB$ Animate | Defined$ Self | Triggers$ KhansTrigger | Duration$ Permanent | SpellDescription$ Khans SVar:KhansTrigger:Mode$ Phase | Phase$ Upkeep | TriggerZones$ Battlefield | ValidPlayer$ You | Execute$ PseudoDraw | TriggerDescription$ At the beginning of your upkeep, exile the top card of your library. Until end of turn, you may play that card. SVar:PseudoDraw:DB$ Dig | Defined$ You | DigNum$ 1 | ChangeNum$ All | DestinationZone$ Exile | RememberChanged$ True | SubAbility$ DBEffect diff --git a/forge-gui/res/cardsfolder/p/palace_siege.txt b/forge-gui/res/cardsfolder/p/palace_siege.txt index 0c0bf82879e..ee9d4eabdfa 100644 --- a/forge-gui/res/cardsfolder/p/palace_siege.txt +++ b/forge-gui/res/cardsfolder/p/palace_siege.txt @@ -2,7 +2,7 @@ Name:Palace Siege ManaCost:3 B B Types:Enchantment K:ETBReplacement:Other:SiegeChoice -SVar:SiegeChoice:DB$ GenericChoice | Choices$ Khans,Dragons | Defined$ You | SetChosenMode$ True | AILogic$ Dragons | ShowChoice$ ExceptSelf | SpellDescription$ As CARDNAME enters the battlefield, choose Khans or Dragons. Khans — At the beginning of your upkeep, return target creature card from your graveyard to your hand. Dragons — At the beginning of your upkeep, each opponent loses 2 life and you gain 2 life. +SVar:SiegeChoice:DB$ GenericChoice | Choices$ Khans,Dragons | Defined$ You | SetChosenMode$ True | AILogic$ Dragons | ShowChoice$ ExceptSelf | SpellDescription$ As CARDNAME enters the battlefield, choose Khans or Dragons.,,,• Khans — At the beginning of your upkeep, return target creature card from your graveyard to your hand.,,,• Dragons — At the beginning of your upkeep, each opponent loses 2 life and you gain 2 life. SVar:Khans:DB$ Animate | Defined$ Self | Triggers$ KhansTrigger | Duration$ Permanent | SpellDescription$ Khans SVar:KhansTrigger:Mode$ Phase | Phase$ Upkeep | TriggerZones$ Battlefield | ValidPlayer$ You | Execute$ RaiseDead | TriggerDescription$ At the beginning of your upkeep, return target creature card from your graveyard to your hand. SVar:RaiseDead:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | TgtPrompt$ Choose target creature card in your graveyard | ValidTgts$ Creature.YouCtrl @@ -10,4 +10,5 @@ SVar:Dragons:DB$ Animate | Defined$ Self | Triggers$ DragonsTrigger | Duration$ SVar:DragonsTrigger:Mode$ Phase | Phase$ Upkeep | TriggerZones$ Battlefield | ValidPlayer$ You | Execute$ SyphonLife | TriggerDescription$ At the beginning of your upkeep, each opponent loses 2 life and you gain 2 life. SVar:SyphonLife:DB$ LoseLife | Defined$ Player.Opponent | LifeAmount$ 2 | SubAbility$ DBGainLife SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 2 +DeckHas:Ability$LifeGain|Graveyard Oracle:As Palace Siege enters the battlefield, choose Khans or Dragons.\n• Khans — At the beginning of your upkeep, return target creature card from your graveyard to your hand.\n• Dragons — At the beginning of your upkeep, each opponent loses 2 life and you gain 2 life. diff --git a/forge-gui/res/cardsfolder/upcoming/blanchwood_prowler.txt b/forge-gui/res/cardsfolder/upcoming/blanchwood_prowler.txt index 5f0a543bfe5..e80bf5c4dbb 100644 --- a/forge-gui/res/cardsfolder/upcoming/blanchwood_prowler.txt +++ b/forge-gui/res/cardsfolder/upcoming/blanchwood_prowler.txt @@ -2,7 +2,7 @@ Name:Blanchwood Prowler ManaCost:1 G Types:Creature Elemental PT:1/1 -T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigMill | TriggerDescription$ When CARDNAME enters the battlefield, mill three cards. You may put a land card from among the cards milled this way into your hand. If you don’t, put a +1/+1 counter on CARDNAME. (To mill a card, put the top card of your library into your graveyard.) +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigMill | TriggerDescription$ When CARDNAME enters the battlefield, mill three cards. You may put a land card from among the cards milled this way into your hand. If you don't, put a +1/+1 counter on CARDNAME. (To mill a card, put the top card of your library into your graveyard.) SVar:TrigMill:DB$ Mill | NumCards$ 3 | Defined$ You | Imprint$ True | SubAbility$ DBChangeZone SVar:DBChangeZone:DB$ ChangeZone | Origin$ Graveyard,Exile | Destination$ Hand | ChangeType$ Land.YouOwn+IsImprinted | RememberChanged$ True | Hidden$ True | Optional$ True | SubAbility$ DBCounter SVar:DBCounter:DB$ PutCounter | CounterType$ P1P1 | Defined$ Self | ConditionDefined$ Remembered | ConditionPresent$ Card | ConditionCompare$ EQ0 | SubAbility$ DBCleanup diff --git a/forge-gui/res/cardsfolder/upcoming/fallaji_archeologist.txt b/forge-gui/res/cardsfolder/upcoming/fallaji_archeologist.txt index a07405fae37..ef72d1b9404 100644 --- a/forge-gui/res/cardsfolder/upcoming/fallaji_archeologist.txt +++ b/forge-gui/res/cardsfolder/upcoming/fallaji_archeologist.txt @@ -9,4 +9,4 @@ SVar:DBCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | ConditionDef SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True | ClearImprinted$ True DeckHas:Ability$Mill|Counters DeckHints:Ability$Graveyard -Oracle:When Fallaji Archaeologist enters the battlefield, mill three cards. You may put a noncreature, nonland card from among the cards milled this way into your hand. If you don't, put a +1/+1 counter on Fallaji Archaeologist. (To mill a card, put the top card of your library into your graveyard.) \ No newline at end of file +Oracle:When Fallaji Archaeologist enters the battlefield, mill three cards. You may put a noncreature, nonland card from among the cards milled this way into your hand. If you don't, put a +1/+1 counter on Fallaji Archaeologist. (To mill a card, put the top card of your library into your graveyard.)