diff --git a/forge-game/src/main/java/forge/game/card/CounterEnumType.java b/forge-game/src/main/java/forge/game/card/CounterEnumType.java index ac51ebefd8ab..5d0373f5da48 100644 --- a/forge-game/src/main/java/forge/game/card/CounterEnumType.java +++ b/forge-game/src/main/java/forge/game/card/CounterEnumType.java @@ -195,6 +195,8 @@ public enum CounterEnumType implements CounterType { GHOSTFORM("GHSTF", 223, 0, 254, CounterAiCategory.Neutral), + GLASS("GLASS", 219, 225, 227, CounterAiCategory.Negative), + GLYPH("GLYPH", 184, 202, 199, CounterAiCategory.Positive), GOLD("GOLD", 248, 191, 0, CounterAiCategory.Negative), @@ -407,6 +409,8 @@ public enum CounterEnumType implements CounterType { SHRED("SHRED", 255, 165, 152, CounterAiCategory.Positive), + SHY("SHY", 232, 178, 199, CounterAiCategory.Neutral), + SILVER("SILVER", 192, 192, 192, CounterAiCategory.Positive), SKEWER("SKEWER", 202, 192, 156, CounterAiCategory.Positive), diff --git a/forge-gui/res/cardsfolder/a/asmoranomardicadaistinaculdacars_kitchen.txt b/forge-gui/res/cardsfolder/a/asmoranomardicadaistinaculdacars_kitchen.txt new file mode 100644 index 000000000000..866302318242 --- /dev/null +++ b/forge-gui/res/cardsfolder/a/asmoranomardicadaistinaculdacars_kitchen.txt @@ -0,0 +1,19 @@ +Name:Asmoranomardicadaistinaculdacar's Kitchen +ManaCost:no cost +Types:Plane Hell +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ Whenever you planeswalk here and whenever a creature enters under your control, create a Food token. +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.YouCtrl | TriggerZones$ Command | Secondary$ True | Execute$ TrigToken | TriggerDescription$ Whenever you planeswalk here and whenever a creature enters under your control, create a Food token. +SVar:TrigToken:DB$ Token | TokenScript$ c_a_food_sac | TokenOwner$ You +T:Mode$ LifeGained | ValidPlayer$ You | TriggerZones$ Command | Execute$ TrigDrain | TriggerDescription$ Whenever you gain life, target opponent loses that much life. +SVar:TrigDrain:DB$ LoseLife | ValidTgts$ Opponent | LifeAmount$ X +SVar:X:TriggerCount$LifeAmount +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever Chaos ensues, you may sacrifice any number of artifacts or creatures. Draw that many cards and lose that much life. +SVar:RolledChaos:DB$ Sacrifice | Defined$ You | Amount$ SacX | SacValid$ Artifact,Creature | RememberSacrificed$ True | Optional$ True | SubAbility$ DBDraw +SVar:SacX:Count$Valid Artifact.YouCtrl,Creature.YouCtrl +SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ DrawX | SubAbility$ DBLoseLife2 +SVar:DrawX:Remembered$Amount +SVar:DBLoseLife2:DB$ LoseLife | Defined$ You | LifeAmount$ DrawX | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +DeckHas:Ability$Token|Sacrifice|Draw|LifeGain & Type$Food +DeckHints:Type$Food +Oracle:Whenever you planeswalk here and whenever a creature enters under your control, create a Food token.\nWhenever you gain life, target opponent loses that much life.\nWhenever Chaos ensues, you may sacrifice any number of artifacts or creatures. Draw that many cards and lose that much life. diff --git a/forge-gui/res/cardsfolder/b/bicycle_rack.txt b/forge-gui/res/cardsfolder/b/bicycle_rack.txt new file mode 100644 index 000000000000..020cbb8c2ce0 --- /dev/null +++ b/forge-gui/res/cardsfolder/b/bicycle_rack.txt @@ -0,0 +1,10 @@ +Name:Bicycle Rack +ManaCost:no cost +Types:Plane Amsterdam +S:Mode$ Continuous | EffectZone$ Command | Affected$ Card | AffectedZone$ Hand | AddKeyword$ Cycling:2 | Description$ Cards in each player's hand have cycling {2}. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigEffect | TriggerDescription$ Whenever Chaos ensues, until end of turn, creatures you control have "This creature gets +1/+1 for each card you've discarded this turn." +SVar:TrigEffect:DB$ Effect | StaticAbilities$ STBuff +SVar:STBuff:Mode$ Continuous | Affected$ Creature.YouCtrl | AddStaticAbility$ STBuffGranted | Description$ Creatures you control have "This creature gets +1/+1 for each card you've discarded this turn." +SVar:STBuffGranted:Mode$ Continuous | Affected$ Card.Self | AddPower$ X | AddToughness$ X | Description$ CARDNAME gets +1/+1 for each card you've discarded this turn. +SVar:X:PlayerCountPropertyYou$CardsDiscardedThisTurn +Oracle:Cards in each player's hand have cycling {2}.\nWhenever Chaos ensues, until end of turn, creatures you control have "This creature gets +1/+1 for each card you've discarded this turn." diff --git a/forge-gui/res/cardsfolder/b/black_lotus_lounge.txt b/forge-gui/res/cardsfolder/b/black_lotus_lounge.txt new file mode 100644 index 000000000000..f8657ceeb1e8 --- /dev/null +++ b/forge-gui/res/cardsfolder/b/black_lotus_lounge.txt @@ -0,0 +1,11 @@ +Name:Black Lotus Lounge +ManaCost:no cost +Types:Plane MagicCon +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When you planeswalk here and at the beginning of your upkeep, create a Black Lotus artifact token. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Command | Execute$ TrigToken | Secondary$ True | TriggerDescription$ When you planeswalk here and at the beginning of your upkeep, create a Black Lotus artifact token. +SVar:TrigToken:DB$ CopyPermanent | DefinedName$ Black Lotus +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigRepeat | TriggerDescription$ Whenever Chaos ensues, each player draws a card for each artifact token they control. +SVar:TrigRepeat:DB$ RepeatEach | RepeatPlayers$ Player | RepeatSubAbility$ DBDraw +SVar:DBDraw:DB$ Draw | Defined$ Remembered | NumCards$ X +SVar:X:Count$Valid Artifact.token+RememberedPlayerCtrl +Oracle:When you planeswalk here and at the beginning of your upkeep, create a Black Lotus artifact token.\nWhenever Chaos ensues, each player draws a card for each artifact token they control. diff --git a/forge-gui/res/cardsfolder/c/circus_of_the_sun.txt b/forge-gui/res/cardsfolder/c/circus_of_the_sun.txt new file mode 100644 index 000000000000..24c9f8b43f19 --- /dev/null +++ b/forge-gui/res/cardsfolder/c/circus_of_the_sun.txt @@ -0,0 +1,17 @@ +Name:Circus of the Sun +ManaCost:no cost +Types:Plane Las Vegas +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ Whenever you planeswalk here or at the beginning of your upkeep, create two 1/1 red performer creature tokens with flying and haste. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Command | Secondary$ True | Execute$ TrigToken | TriggerDescription$ Whenever you planeswalk here or at the beginning of your upkeep, create two 1/1 red performer creature tokens with flying and haste. +SVar:TrigToken:DB$ Token | TokenAmount$ 2 | TokenScript$ r_1_1_performer_flying_haste | TokenOwner$ You +T:Mode$ DamageDoneOnce | CombatDamage$ True | ValidSource$ Creature.withFlying+YouCtrl | ValidTarget$ Player | TriggerZones$ Command | Execute$ TrigChoose | TriggerDescription$ Whenever one or more creatures you control with flying deal combat damage to a player, you may return it to your hand. If you do, draw cards equal to its power. +SVar:TrigChoose:DB$ ChooseCard | DefinedCards$ TriggeredSources | Amount$ NumSources | MinAmount$ 0 | RememberChosen$ True | ChoiceTitle$ Choose creatures to return to your hand | SubAbility$ TrigReturn +SVar:NumSources:TriggerObjectsSources$Amount +SVar:TrigReturn:DB$ ChangeZone | Defined$ Remembered | Origin$ Battlefield | Destination$ Hand | RememberLKI$ True | ForgetOtherRemembered$ True | SubAbility$ DBDraw +SVar:DBDraw:DB$ Draw | NumCards$ XPower | ConditionDefined$ RememberedLKI | ConditionPresent$ Card | ConditionCompare$ GE1 | SubAbility$ DBCleanupDraw +SVar:XPower:RememberedLKI$CardPower +SVar:DBCleanupDraw:DB$ Cleanup | ClearRemembered$ True +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigCounter | TriggerDescription$ Whenever Chaos ensues, put a flying counter on up to one target creature. It becomes a Performer in addition to its other types. +SVar:TrigCounter:DB$ PutCounter | ValidTgts$ Creature | TargetMin$ 0 | TargetMax$ 1 | CounterType$ Flying | CounterNum$ 1 | SubAbility$ DBAnimate +SVar:DBAnimate:DB$ Animate | Defined$ Targeted | Types$ Performer | Duration$ Permanent +Oracle:Whenever you planeswalk here or at the beginning of your upkeep, create two 1/1 red performer creature tokens with flying and haste.\nWhenever one or more creatures you control with flying deal combat damage to a player, you may return it to your hand. If you do, draw cards equal to its power.\nWhenever Chaos ensues, put a flying counter on up to one target creature. It becomes a Performer in addition to its other types. diff --git a/forge-gui/res/cardsfolder/c/city_hall.txt b/forge-gui/res/cardsfolder/c/city_hall.txt new file mode 100644 index 000000000000..4a614b4d72d3 --- /dev/null +++ b/forge-gui/res/cardsfolder/c/city_hall.txt @@ -0,0 +1,12 @@ +Name:City Hall +ManaCost:no cost +Types:Plane Chicago +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigMonarch | TriggerDescription$ When you planeswalk here, you become the Monarch. +SVar:TrigMonarch:DB$ BecomeMonarch | Defined$ You +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigRepeatEach | TriggerDescription$ Whenever Chaos ensues, each player may create two tapped Treasure tokens. Each player who does can't attack you during their next turn. +SVar:TrigRepeatEach:DB$ RepeatEach | RepeatSubAbility$ DBToken | RepeatPlayers$ Player | ChangeZoneTable$ True | RepeatOptionalForEachPlayer$ True | RepeatOptionalMessage$ Do you want to create two tapped Treasure tokens? | SubAbility$ DBEffect +SVar:DBToken:DB$ Token | TokenScript$ c_a_treasure_sac | TokenAmount$ 2 | TokenTapped$ True | TokenOwner$ Player.IsRemembered | RememberTokens$ True +SVar:DBEffect:DB$ Effect | EffectOwner$ RememberedOwner | RememberObjects$ You | StaticAbilities$ STCantAttack | Duration$ UntilTheEndOfYourNextTurn | SubAbility$ DBCleanup +SVar:STCantAttack:Mode$ CantAttack | ValidCard$ Creature.YouCtrl | Target$ Player.IsRemembered | Description$ You can't attack the remembered player during your next turn. +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +Oracle:When you planeswalk here, you become the Monarch.\nWhenever Chaos ensues, each player may create two tapped Treasure tokens. Each player who does can't attack you during their next turn. diff --git a/forge-gui/res/cardsfolder/e/elvish_impersonation_contest.txt b/forge-gui/res/cardsfolder/e/elvish_impersonation_contest.txt new file mode 100644 index 000000000000..a1c777013ecb --- /dev/null +++ b/forge-gui/res/cardsfolder/e/elvish_impersonation_contest.txt @@ -0,0 +1,12 @@ +Name:Elvish Impersonation Contest +ManaCost:no cost +Types:Plane Las Vegas +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ Whenever you planeswalk here and at the beginning of your upkeep, create an Elvish Impersonators token. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Command | Secondary$ True | Execute$ TrigToken | TriggerDescription$ Whenever you planeswalk here and at the beginning of your upkeep, create an Elvish Impersonators token. +SVar:TrigToken:DB$ CopyPermanent | DefinedName$ Elvish Impersonators +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever Chaos ensues, target Elvish Impersonators becomes a 6/6. Its controller creates a Treasure token. +SVar:RolledChaos:DB$ Animate | ValidTgts$ Creature.namedElvish Impersonators | TgtPrompt$ Select target Elvish Impersonators | Power$ 6 | Toughness$ 6 | Duration$ Permanent | SubAbility$ DBToken +SVar:DBToken:DB$ Token | TokenScript$ c_a_treasure_sac | TokenOwner$ TargetedController +DeckHas:Ability$Token & Type$Elf|Treasure +DeckHints:Type$Elf|Treasure +Oracle:Whenever you planeswalk here and at the beginning of your upkeep, create an Elvish Impersonators token. (It's a {3}{G} Elf creature with "As this creature enters, roll a six-sided die twice. Its base power becomes the first result and its base toughness becomes the second result.")\nThank you very much—Whenever Chaos ensues, target Elvish Impersonators becomes a 6/6. Its controller creates a Treasure token. diff --git a/forge-gui/res/cardsfolder/e/event_horizon.txt b/forge-gui/res/cardsfolder/e/event_horizon.txt new file mode 100644 index 000000000000..1eb410da656d --- /dev/null +++ b/forge-gui/res/cardsfolder/e/event_horizon.txt @@ -0,0 +1,13 @@ +Name:Event Horizon +ManaCost:no cost +Types:Plane Blind Eternities +S:Mode$ Continuous | EffectZone$ Command | Affected$ Land.nonBasic | RemoveLandTypes$ True | SetName$ Wastes | AddAbility$ WastesMana | Description$ Nonbasic lands are Wastes. +SVar:WastesMana:AB$ Mana | Cost$ T | Produced$ C | SpellDescription$ Add {C}. +T:Mode$ TapsForMana | ValidCard$ Permanent | Activator$ You | Produced$ C | Execute$ TrigMana | TriggerZones$ Command | Static$ True | TriggerDescription$ Whenever you tap a permanent for {C}, add an additional {C}. +SVar:TrigMana:DB$ Mana | Produced$ C | Amount$ 1 | Defined$ You +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigCharm | TriggerDescription$ Whenever chaos ensues, ABILITY +SVar:TrigCharm:DB$ Charm | Choices$ DrawFour,DestroyPerm,Reanimate +SVar:DrawFour:DB$ Draw | NumCards$ 4 | SpellDescription$ Draw four cards. +SVar:DestroyPerm:DB$ Destroy | ValidTgts$ Permanent | TgtPrompt$ Select target permanent | SpellDescription$ Destroy target permanent. +SVar:Reanimate:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | ValidTgts$ Creature.YouOwn | Optional$ True | TgtPrompt$ Choose target creature card in your graveyard | SpellDescription$ You may return target creature card from your graveyard to the battlefield. +Oracle:Nonbasic lands are Wastes.\nWhenever you tap a permanent for {C}, add an additional {C}.\nWhenever chaos ensues, choose one —\n• Draw four cards.\n• Destroy target permanent.\n• You may return target creature card from your graveyard to the battlefield. diff --git a/forge-gui/res/cardsfolder/g/ghirapur_grand_prix.txt b/forge-gui/res/cardsfolder/g/ghirapur_grand_prix.txt new file mode 100644 index 000000000000..b02133c84873 --- /dev/null +++ b/forge-gui/res/cardsfolder/g/ghirapur_grand_prix.txt @@ -0,0 +1,11 @@ +Name:Ghirapur Grand Prix +ManaCost:no cost +Types:Plane Avishkar +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigEngines | TriggerDescription$ When you planeswalk here, all players start their engines! (If you have no speed, it starts at 1. It increases once on each of your turns when an opponent loses life. Max speed is 4.) +SVar:TrigEngines:DB$ ChangeSpeed | Mode$ Increase | Defined$ Player +T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | TriggerZones$ Command | Execute$ TrigCounter | TriggerDescription$ At the beginning of your end step, put X +1/+1 counters on target creature you control, where X is your speed. +SVar:TrigCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 | CounterNum$ Count$YourSpeed +T:Mode$ PlaneswalkedFrom | ValidCard$ Plane.Self | Execute$ TrigRepeat | TriggerDescription$ When you planeswalk away from CARDNAME, each player with the highest speed among players creates three Treasure tokens. +SVar:TrigRepeat:DB$ RepeatEach | RepeatPlayers$ Player | RepeatSubAbility$ DBToken +SVar:DBToken:DB$ Token | TokenAmount$ 3 | TokenScript$ c_a_treasure_sac | TokenOwner$ Player.IsRemembered | ConditionCheckSVar$ PlayerCountDefinedRemembered$Speed | ConditionSVarCompare$ EQPlayerCount$HighestSpeed +Oracle:When you planeswalk here, all players start their engines! (If you have no speed, it starts at 1. It increases once on each of your turns when an opponent loses life. Max speed is 4.)\nAt the beginning of your end step, put X +1/+1 counters on target creature you control, where X is your speed.\nWhen you planeswalk away from Ghirapur Grand Prix, each player with the highest speed among players creates three Treasure tokens. diff --git a/forge-gui/res/cardsfolder/j/jaliras_show.txt b/forge-gui/res/cardsfolder/j/jaliras_show.txt new file mode 100644 index 000000000000..8d1ef35a5079 --- /dev/null +++ b/forge-gui/res/cardsfolder/j/jaliras_show.txt @@ -0,0 +1,12 @@ +Name:Jalira's Show +ManaCost:no cost +Types:Plane Las Vegas +T:Mode$ AttackersDeclared | AttackingPlayer$ You | Execute$ TrigToken | TriggerZones$ Command | TriggerDescription$ Whenever you attack, create a 1/1 red Performer creature token with flying. +SVar:TrigToken:DB$ Token | TokenScript$ r_1_1_performer_flying | TokenOwner$ You +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigDestroy | TriggerZones$ Command | TriggerDescription$ Whenever you planeswalk here or chaos ensues, destroy up to one target creature. When you do, its controller reveals cards from the top of their library until they reveal a creature card. The player puts that card onto the battlefield, then puts the rest on the bottom of their library in a random order. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigDestroy | Secondary$ True | TriggerDescription$ Whenever you planeswalk here or chaos ensues, destroy up to one target creature. When you do, its controller reveals cards from the top of their library until they reveal a creature card. The player puts that card onto the battlefield, then puts the rest on the bottom of their library in a random order. +SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature | TgtPrompt$ Select up to one target creature | TargetMin$ 0 | TargetMax$ 1 | RememberLKI$ True | SubAbility$ DBDigUntil +SVar:DBDigUntil:DB$ DigUntil | Defined$ RememberedController | Valid$ Creature | ValidDescription$ creature | FoundDestination$ Battlefield | RevealedDestination$ Library | RevealedLibraryPosition$ -1 | RevealRandomOrder$ True | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +DeckHas:Ability$Token & Type$Performer +Oracle:Whenever you attack, create a 1/1 red Performer creature token with flying.\nWhenever you planeswalk here or chaos ensues, destroy up to one target creature. When you do, its controller reveals cards from the top of their library until they reveal a creature card. The player puts that card onto the battlefield, then puts the rest on the bottom of their library in a random order. diff --git a/forge-gui/res/cardsfolder/m/mojave_desert.txt b/forge-gui/res/cardsfolder/m/mojave_desert.txt new file mode 100644 index 000000000000..9bcf40fa2b31 --- /dev/null +++ b/forge-gui/res/cardsfolder/m/mojave_desert.txt @@ -0,0 +1,18 @@ +Name:Mojave Desert +ManaCost:no cost +Types:Plane Las Vegas +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigSearchAll | TriggerDescription$ Whenever you planeswalk to CARDNAME, each player searches their library for up to two basic land or Desert cards and puts them onto the battlefield tapped, then shuffles their library. If a Desert entered the battlefield under a player's control this way, they create a 1/1 black Snake creature token with deathtouch. +SVar:TrigSearchAll:DB$ RepeatEach | RepeatPlayers$ Player | RepeatSubAbility$ DBSearchLand +SVar:DBSearchLand:DB$ ChangeZone | Origin$ Library | Destination$ Battlefield | Tapped$ True | ChangeType$ Land.Basic,Land.Desert | ChangeTypeDesc$ basic land or Desert | ChangeNum$ 2 | DefinedPlayer$ Player.IsRemembered | Chooser$ Player.IsRemembered | Imprint$ True | SubAbility$ DBSnakeCheck +SVar:DBSnakeCheck:DB$ Token | TokenScript$ b_1_1_snake_deathtouch | TokenOwner$ Player.IsRemembered | ConditionDefined$ Imprinted | ConditionPresent$ Land.Desert | ConditionCompare$ GE1 | SubAbility$ DBShuffleOne +SVar:DBShuffleOne:DB$ Shuffle | Defined$ Player.IsRemembered | SubAbility$ DBCleanupOne +SVar:DBCleanupOne:DB$ Cleanup | ClearImprinted$ True +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigChaosRemember | TriggerDescription$ Whenever chaos ensues, create X 1/1 black Snake creature tokens with deathtouch, where X is 1 plus the number of nonbasic land types among lands you control. +SVar:TrigChaosRemember:DB$ Pump | RememberObjects$ Valid Land.YouCtrl | SubAbility$ DBChaosToken +SVar:DBChaosToken:DB$ Token | TokenAmount$ X | TokenScript$ b_1_1_snake_deathtouch | TokenOwner$ You | SubAbility$ DBCleanupChaos +SVar:X:SVar$XNonbasic/Plus.1 +SVar:XNonbasic:SVar$XAllTypes/Minus.XBasicTypes +SVar:XAllTypes:Remembered$LandType +SVar:XBasicTypes:Count$Domain +SVar:DBCleanupChaos:DB$ Cleanup | ClearRemembered$ True +Oracle:Whenever you planeswalk to Mojave Desert, each player searches their library for up to two basic land or Desert cards and puts them onto the battlefield tapped, then shuffles their library. If a Desert entered the battlefield under a player's control this way, they create a 1/1 black Snake creature token with deathtouch.\nWhenever chaos ensues, create X 1/1 black Snake creature tokens with deathtouch, where X is 1 plus the number of nonbasic land types among lands you control. diff --git a/forge-gui/res/cardsfolder/n/p_no_way_out.txt b/forge-gui/res/cardsfolder/n/p_no_way_out.txt new file mode 100644 index 000000000000..9f6dd4391140 --- /dev/null +++ b/forge-gui/res/cardsfolder/n/p_no_way_out.txt @@ -0,0 +1,15 @@ +Name:P-No Way Out +ManaCost:no cost +Types:Plane Duskmourn +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigDread | TriggerDescription$ CARDNAME enters with three dread counters. +SVar:TrigDread:DB$ PutCounter | Defined$ Self | CounterType$ DREAD | CounterNum$ 3 +R:Event$ Planeswalk | IsPresent$ Card.Self+counters_GE1_DREAD | PresentZone$ Command | ReplaceWith$ Chaos | Description$ You can never leave — If a player would planeswalk while CARDNAME has dread counters, chaos ensues instead. +SVar:Chaos:DB$ ChaosEnsues +T:Mode$ PlanarDice | TriggerZones$ Command | Execute$ TrigManifest | TriggerDescription$ Whenever you roll the planar die, manifest dread. (Look at the top two cards of your library. Put one onto the battlefield face down as a 2/2 creature and the other into your graveyard. Turn it face up any time for its mana cost if it's a creature card.) +SVar:TrigManifest:DB$ ManifestDread +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigRepeat | TriggerDescription$ Whenever Chaos ensues, each player may turn a face-down permanent they control face up. Remove a dread counter from CARDNAME. +SVar:TrigRepeat:DB$ RepeatEach | RepeatPlayers$ Player | RepeatSubAbility$ DBChoose | SubAbility$ DBRemoveCounter +SVar:DBChoose:DB$ ChooseCard | Defined$ Remembered | Choices$ Permanent.faceDown+RememberedPlayerCtrl | Amount$ 1 | ChoiceTitle$ Choose a face-down permanent you control to turn face up | SubAbility$ DBFlip +SVar:DBFlip:DB$ SetState | Mode$ TurnFaceUp | Defined$ ChosenCard +SVar:DBRemoveCounter:DB$ RemoveCounter | Defined$ Self | CounterType$ DREAD | CounterNum$ 1 +Oracle:No Way Out enters with three dread counters.\nYou can never leave — If a player would planeswalk while this plane has dread counters, chaos ensues instead.\nWhenever you roll the planar die, manifest dread. (Look at the top two cards of your library. Put one onto the battlefield face down as a 2/2 creature and the other into your graveyard. Turn it face up any time for its mana cost if it's a creature card.)\nWhenever Chaos ensues, each player may turn a face-down permanent they control face up. Remove a dread counter from this plane. diff --git a/forge-gui/res/cardsfolder/o/omenpath_instability.txt b/forge-gui/res/cardsfolder/o/omenpath_instability.txt new file mode 100644 index 000000000000..9118af8f1051 --- /dev/null +++ b/forge-gui/res/cardsfolder/o/omenpath_instability.txt @@ -0,0 +1,8 @@ +Name:Omenpath Instability +ManaCost:no cost +Types:Phenomenon +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When you encounter CARDNAME, each player creates an Entropy enchantment token with "Sacrifice this enchantment: Chaos ensues. Activate only as a sorcery." and an Omenpath enchantment token with "Sacrifice this enchantment: Planeswalk. Activate only as a sorcery." (Then planeswalk away from this phenomenon.) +SVar:TrigToken:DB$ Token | TokenScript$ c_e_entropy_sac_chaos | TokenOwner$ Player | SubAbility$ TrigToken2 +SVar:TrigToken2:DB$ Token | TokenScript$ c_e_omenpath_sac_planeswalk | TokenOwner$ Player | SubAbility$ PWAway +SVar:PWAway:DB$ Planeswalk +Oracle:When you encounter Omenpath Instability, each player creates an Entropy enchantment token with "Sacrifice this enchantment: Chaos ensues. Activate only as a sorcery." and an Omenpath enchantment token with "Sacrifice this enchantment: Planeswalk. Activate only as a sorcery." (Then planeswalk away from this phenomenon.) diff --git a/forge-gui/res/cardsfolder/o/oteclan.txt b/forge-gui/res/cardsfolder/o/oteclan.txt new file mode 100644 index 000000000000..bfb98d65ad8c --- /dev/null +++ b/forge-gui/res/cardsfolder/o/oteclan.txt @@ -0,0 +1,9 @@ +Name:Oteclán +ManaCost:no cost +Types:Plane Ixalan +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigChaos | TriggerDescription$ When you planeswalk to CARDNAME and at the beginning of your upkeep, chaos ensues. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Command | Execute$ TrigChaos | TriggerDescription$ When you planeswalk to CARDNAME and at the beginning of your upkeep, chaos ensues. +SVar:TrigChaos:DB$ ChaosEnsues +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigDiscover | TriggerDescription$ Whenever chaos ensues, discover 3. +SVar:TrigDiscover:DB$ Discover | Num$ 3 +Oracle:When you planeswalk to Oteclán and at the beginning of your upkeep, chaos ensues.\nWhenever chaos ensues, discover 3. (Exile cards from the top of your library until you exile a nonland card with that mana value or less. Cast it without paying its mana cost or put it into your hand. Put the rest on the bottom in a random order.) diff --git a/forge-gui/res/cardsfolder/p/prestons_stage.txt b/forge-gui/res/cardsfolder/p/prestons_stage.txt new file mode 100644 index 000000000000..e5593d831f3d --- /dev/null +++ b/forge-gui/res/cardsfolder/p/prestons_stage.txt @@ -0,0 +1,14 @@ +Name:Preston's Stage +ManaCost:no cost +Types:Plane Las Vegas +T:Mode$ SpellCast | ValidCard$ Instant,Card.hasKeywordFlash | ValidActivatingPlayer$ Player | Execute$ TrigTokenCast | TriggerZones$ Command | TriggerDescription$ Whenever a player performs a magic trick, they create a Hat token. (You perform a magic trick when you cast an instant or spell with flash, or turn a face-down creature face-up. Hat tokens are artifact tokens with "{1}, {T}, Sacrifice this artifact: Create a 1/1 white Rabbit creature token.") +SVar:TrigTokenCast:DB$ Token | TokenScript$ c_a_hat_sac | TokenOwner$ TriggeredActivator +T:Mode$ TurnFaceUp | ValidCard$ Creature | TriggerZones$ Command | Execute$ TrigTokenFaceUp | Secondary$ True | TriggerDescription$ Whenever a player performs a magic trick, they create a Hat token. (You perform a magic trick when you cast an instant or spell with flash, or turn a face-down creature face-up. Hat tokens are artifact tokens with "{1}, {T}, Sacrifice this artifact: Create a 1/1 white Rabbit creature token.") +SVar:TrigTokenFaceUp:DB$ Token | TokenScript$ c_a_hat_sac | TokenOwner$ TriggeredCardController +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ RolledChaos | TriggerDescription$ Whenever Chaos ensues, until your next turn, creature cards in your hand have flash. +SVar:RolledChaos:DB$ Effect | StaticAbilities$ GrantFlashHand,GrantFlashStack | Duration$ UntilYourNextTurn +# Flash needs to persist onto the stack too, since the SpellCast trigger checks hasKeywordFlash on the spell itself, and a card loses the hand-only grant the moment it leaves hand. GrantFlashStack keeps that grant alive on the stack, but ONLY for creatures that were actually cast from hand (wasCastFromYourHand) - this stops it from also catching creatures cast from elsewhere (e.g. Gravecrawler from graveyard, Misthollow Griffin from exile) that happen to be on the stack at the same time. +SVar:GrantFlashHand:Mode$ Continuous | Affected$ Creature.YouOwn | AffectedZone$ Hand | AddKeyword$ Flash | Description$ Creature cards in your hand have flash. +SVar:GrantFlashStack:Mode$ Continuous | Affected$ Creature.YouOwn+wasCastFromYourHand | AffectedZone$ Stack | AddKeyword$ Flash +SVar:AIRollPlanarDieParams:Mode$ Random | Chance$ 25 +Oracle:Whenever a player performs a magic trick, they create a Hat token. (You perform a magic trick when you cast an instant or spell with flash, or turn a face-down creature face-up. Hat tokens are artifact tokens with "{1}, {T}, Sacrifice this artifact: Create a 1/1 white Rabbit creature token.")\nWhenever Chaos ensues, until your next turn, creature cards in your hand have flash. diff --git a/forge-gui/res/cardsfolder/p/pursued_by_something.txt b/forge-gui/res/cardsfolder/p/pursued_by_something.txt new file mode 100644 index 000000000000..c04f1d67ac05 --- /dev/null +++ b/forge-gui/res/cardsfolder/p/pursued_by_something.txt @@ -0,0 +1,11 @@ +Name:Pursued by Something +ManaCost:no cost +Types:Plane Duskmourn +T:Mode$ Phase | Phase$ Main | PhaseCount$ 2 | ValidPlayer$ You | TriggerZones$ Command | IsPresent$ Creature.tapped+YouCtrl | Execute$ TrigDread | TriggerDescription$ At the beginning of your second main phase, if you control a tapped creature, manifest dread. (Look at the top two cards of your library. Put one onto the battlefield face down as a 2/2 creature and the other into your graveyard. Turn it face up any time for its mana cost if it's a creature card.) +SVar:TrigDread:DB$ ManifestDread +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigExile | TriggerDescription$ Whenever Chaos ensues, exile target creature. If it's an instant or sorcery, cast it without paying its mana cost. Otherwise put it onto the battlefield under its owner's control. +SVar:TrigExile:DB$ ChangeZone | ValidTgts$ Creature | TgtPrompt$ Select target creature | Origin$ Battlefield | Destination$ Exile | RememberChanged$ True | SubAbility$ DBPlay +SVar:DBPlay:DB$ Play | Defined$ Remembered | ValidSA$ Spell | WithoutManaCost$ True | ConditionDefined$ Remembered | ConditionPresent$ Instant,Sorcery | SubAbility$ DBBattlefield +SVar:DBBattlefield:DB$ ChangeZone | Defined$ Remembered | Origin$ Exile | Destination$ Battlefield | ConditionDefined$ Remembered | ConditionNotPresent$ Instant,Sorcery | SubAbility$ DBCleanup +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +Oracle:At the beginning of your second main phase, if you control a tapped creature, manifest dread. (Look at the top two cards of your library. Put one onto the battlefield face down as a 2/2 creature and the other into your graveyard. Turn it face up any time for its mana cost if it's a creature card.)\nWhenever Chaos ensues, exile target creature. If it's an instant or sorcery, cast it without paying its mana cost. Otherwise put it onto the battlefield under its owner's control. diff --git a/forge-gui/res/cardsfolder/r/raiders_allegiance.txt b/forge-gui/res/cardsfolder/r/raiders_allegiance.txt new file mode 100644 index 000000000000..d148a437f454 --- /dev/null +++ b/forge-gui/res/cardsfolder/r/raiders_allegiance.txt @@ -0,0 +1,17 @@ +Name:Raiders' Allegiance +ManaCost:no cost +Types:Plane Ixalan +T:Mode$ Phase | Phase$ Main | PhaseCount$ 2 | ValidPlayer$ You | TriggerZones$ Command | Execute$ TrigRaid | TriggerDescription$ Raid — At the beginning of your second main phase, for each player dealt combat damage this turn, you get a point counter and create a 2/2 black Pirate creature token with menace. +SVar:TrigRaid:DB$ PutCounter | Defined$ You | CounterType$ POINT | CounterNum$ X | SubAbility$ DBRaidToken +SVar:DBRaidToken:DB$ Token | TokenScript$ b_2_2_pirate_menace | TokenOwner$ You | TokenAmount$ X +SVar:X:PlayerCountPlayers$HasPropertywasDealtCombatDamageThisTurn +T:Mode$ PlaneswalkedFrom | ValidCard$ Plane.Self | Execute$ TrigPayout | TriggerDescription$ Whenever you planeswalk away from CARDNAME, each player with the most point counters or tied for the most point counters creates three Treasure tokens and draws three cards. Then remove all point counters from each player. +SVar:TrigPayout:DB$ Token | TokenScript$ c_a_treasure_sac | TokenOwner$ Player.ConditionGEMaxPoints Counters.POINT | TokenAmount$ 3 | SubAbility$ DBPayoutDraw +SVar:DBPayoutDraw:DB$ Draw | Defined$ Player.ConditionGEMaxPoints Counters.POINT | NumCards$ 3 | SubAbility$ DBRemoveAllPoints +SVar:DBRemoveAllPoints:DB$ RemoveCounter | Defined$ Player | CounterType$ POINT | CounterNum$ All +SVar:MaxPoints:PlayerCountPlayers$HighestCounters.POINT +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigProliferate | TriggerDescription$ Whenever Chaos ensues, proliferate for each Pirate you control. +SVar:TrigProliferate:DB$ Proliferate | Amount$ NumPirates +SVar:NumPirates:Count$Valid Pirate.YouCtrl +SVar:AIRollPlanarDieParams:Mode$ Always +Oracle:Raid — At the beginning of your second main phase, for each player dealt combat damage this turn, you get a point counter and create a 2/2 black Pirate creature token with menace.\nWhenever you planeswalk away from Raiders' Allegiance, each player with the most point counters or tied for the most point counters creates three Treasure tokens and draws three cards. Then remove all point counters from each player.\nWhenever Chaos ensues, proliferate for each Pirate you control. diff --git a/forge-gui/res/cardsfolder/s/shy_town.txt b/forge-gui/res/cardsfolder/s/shy_town.txt new file mode 100644 index 000000000000..bfa7277be19b --- /dev/null +++ b/forge-gui/res/cardsfolder/s/shy_town.txt @@ -0,0 +1,12 @@ +Name:Shy Town +ManaCost:no cost +Types:Plane Chicago +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigRepeat | TriggerDescription$ Whenever you planeswalk here and whenever chaos ensues, for each opponent, put a shy counter on up to one target creature they control. That creature becomes a Coward in addition to its other types. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigRepeat | TriggerDescription$ Whenever you planeswalk here and whenever chaos ensues, for each opponent, put a shy counter on up to one target creature they control. That creature becomes a Coward in addition to its other types. +SVar:TrigRepeat:DB$ RepeatEach | RepeatPlayers$ Player.Opponent | RepeatSubAbility$ DBChoose +SVar:DBChoose:DB$ ChooseCard | Defined$ You | Choices$ Creature.RememberedPlayerCtrl | Amount$ 1 | ChoiceTitle$ Choose up to one creature that opponent controls to put a shy counter on | SubAbility$ DBCounter +SVar:DBCounter:DB$ PutCounter | Defined$ ChosenCard | CounterType$ SHY | CounterNum$ 1 | SubAbility$ DBAnimate +SVar:DBAnimate:DB$ Animate | Defined$ ChosenCard | Types$ Coward | Duration$ Permanent +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Command | Execute$ DBWarrior | TriggerDescription$ At the beginning of your upkeep, create a 2/2 red Warrior creature token with haste and "Cowards can't block Warriors." +SVar:DBWarrior:DB$ Token | TokenAmount$ 1 | TokenScript$ r_2_2_warrior_haste_coward | TokenOwner$ You +Oracle:Whenever you planeswalk here and whenever chaos ensues, for each opponent, put a shy counter on up to one target creature they control. That creature becomes a Coward in addition to its other types.\nAt the beginning of your upkeep, create a 2/2 red Warrior creature token with haste and "Cowards can't block Warriors." diff --git a/forge-gui/res/cardsfolder/s/sky_deck.txt b/forge-gui/res/cardsfolder/s/sky_deck.txt new file mode 100644 index 000000000000..c91699b79634 --- /dev/null +++ b/forge-gui/res/cardsfolder/s/sky_deck.txt @@ -0,0 +1,10 @@ +Name:Sky Deck +ManaCost:no cost +Types:Plane Chicago +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigCounter | TriggerDescription$ Whenever you planeswalk here, at the beginning of your upkeep, or whenever chaos ensues, put a glass counter on up to one target nonland permanent. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Command | Execute$ TrigCounter | TriggerDescription$ Whenever you planeswalk here, at the beginning of your upkeep, or whenever chaos ensues, put a glass counter on up to one target nonland permanent. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigCounter | TriggerDescription$ Whenever you planeswalk here, at the beginning of your upkeep, or whenever chaos ensues, put a glass counter on up to one target nonland permanent. +SVar:TrigCounter:DB$ PutCounter | ValidTgts$ Permanent.nonLand | TargetMin$ 0 | TargetMax$ 1 | TgtPrompt$ Select up to one target nonland permanent | CounterType$ GLASS | CounterNum$ 1 +T:Mode$ PlaneswalkedFrom | ValidCard$ Plane.Self | Execute$ TrigDestroy | TriggerDescription$ When you planeswalk away from CARDNAME, destroy all permanents with glass counters on them. +SVar:TrigDestroy:DB$ DestroyAll | ValidCards$ Permanent.counters_GE1_GLASS +Oracle:Whenever you planeswalk here, at the beginning of your upkeep, or whenever chaos ensues, put a glass counter on up to one target nonland permanent.\nWhen you planeswalk away from here, destroy all permanents with glass counters on them. diff --git a/forge-gui/res/cardsfolder/t/tarnation.txt b/forge-gui/res/cardsfolder/t/tarnation.txt new file mode 100644 index 000000000000..c2c248ac212e --- /dev/null +++ b/forge-gui/res/cardsfolder/t/tarnation.txt @@ -0,0 +1,8 @@ +Name:Tarnation +ManaCost:no cost +Types:Plane Thunder Junction +T:Mode$ CommitCrime | TriggerZones$ Command | Execute$ TrigDraw | TriggerDescription$ Whenever a player commits a crime, they may draw a card. (Targeting opponents, anything they control, and/or cards in their graveyards is a crime.) +SVar:TrigDraw:DB$ Draw | Defined$ TriggeredPlayer | OptionalDecider$ TriggeredPlayer +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigDamage | TriggerDescription$ Whenever chaos ensues, CARDNAME deals 1 damage to any target. +SVar:TrigDamage:DB$ DealDamage | ValidTgts$ Any | NumDmg$ 1 +Oracle:Whenever a player commits a crime, they may draw a card. (Targeting opponents, anything they control, and/or cards in their graveyards is a crime.)\nWhenever chaos ensues, Tarnation deals 1 damage to any target. diff --git a/forge-gui/res/cardsfolder/t/thats_enough_slices.txt b/forge-gui/res/cardsfolder/t/thats_enough_slices.txt new file mode 100644 index 000000000000..e596741c016b --- /dev/null +++ b/forge-gui/res/cardsfolder/t/thats_enough_slices.txt @@ -0,0 +1,9 @@ +Name:That's Enough Slices +ManaCost:no cost +Types:Phenomenon +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigRepeat | TriggerDescription$ When you encounter this phenomenon, each player creates a Pizza token. If that player has the least life or is tied for the least life, they create two Pizza tokens instead. Then planeswalk away from this phenomenon. (A Pizza token is a Food artifact with "{2}, {T}, Sacrifice this token: You gain 6 life.") +SVar:TrigRepeat:DB$ RepeatEach | RepeatPlayers$ Player | RepeatSubAbility$ DBToken | SubAbility$ PWAway +SVar:DBToken:DB$ Token | TokenScript$ c_a_pizza_sac | TokenOwner$ Player.IsRemembered | SubAbility$ DBBonusToken +SVar:DBBonusToken:DB$ Token | TokenScript$ c_a_pizza_sac | TokenOwner$ Player.IsRemembered | ConditionDefined$ Remembered | ConditionPresent$ Player.withLowestLife | ConditionCompare$ GE1 +SVar:PWAway:DB$ Planeswalk +Oracle:When you encounter this phenomenon, each player creates a Pizza token. If that player has the least life or is tied for the least life, they create two Pizza tokens instead. Then planeswalk away from this phenomenon. (A Pizza token is a Food artifact with "{2}, {T}, Sacrifice this token: You gain 6 life.") diff --git a/forge-gui/res/cardsfolder/t/the_bean.txt b/forge-gui/res/cardsfolder/t/the_bean.txt new file mode 100644 index 000000000000..95dd5452f932 --- /dev/null +++ b/forge-gui/res/cardsfolder/t/the_bean.txt @@ -0,0 +1,10 @@ +Name:The Bean +ManaCost:no cost +Types:Plane Chicago +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigRepeat | TriggerDescription$ When you planeswalk here, each player chooses a creature they control and creates a token that's a copy of it, except it's a Reflection in addition to its other types. +SVar:TrigRepeat:DB$ RepeatEach | RepeatPlayers$ Player | RepeatSubAbility$ DBCopyEach +SVar:DBCopyEach:DB$ CopyPermanent | Choices$ Creature.ControlledBy Remembered | Chooser$ Remembered | Controller$ Remembered | AddTypes$ Reflection +S:Mode$ Continuous | EffectZone$ Command | Affected$ Creature.Reflection | AddKeyword$ Shadow | Description$ All Reflections have shadow. (They can block or be blocked only by creatures with shadow.) +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigChaos | TriggerDescription$ Whenever Chaos ensues, create a token that's a copy of a creature you control, except it's a Reflection in addition to its other types. +SVar:TrigChaos:DB$ CopyPermanent | Choices$ Creature.YouCtrl | AddTypes$ Reflection +Oracle:When you planeswalk here, each player chooses a creature they control and creates a token that's a copy of it, except it's a Reflection in addition to its other types.\nAll Reflections have shadow. (They can block or be blocked only by creatures with shadow.)\nWhenever chaos ensues, create a token that's a copy of a creature you control, except it's a Reflection in addition to its other types. diff --git a/forge-gui/res/cardsfolder/t/the_food_court.txt b/forge-gui/res/cardsfolder/t/the_food_court.txt new file mode 100644 index 000000000000..cd37c737aeb6 --- /dev/null +++ b/forge-gui/res/cardsfolder/t/the_food_court.txt @@ -0,0 +1,12 @@ +Name:The Food Court +ManaCost:no cost +Types:Plane Eldraine +S:Mode$ Continuous | EffectZone$ Command | Affected$ Artifact | AddType$ Food | AddAbility$ FoodSac | Description$ Artifacts are Foods in addition to their other types (They have "{2}, {T}, Sacrifice this artifact: You gain 3 life.") +SVar:FoodSac:AB$ GainLife | Cost$ 2 T Sac<1/CARDNAME/this artifact> | Defined$ You | LifeAmount$ 3 | SpellDescription$ You gain 3 life. +A:AB$ Mana | Cost$ Sac<3/Food> | Produced$ W U B R G | ActivationLimit$ 1 | PlayerTurn$ True | ActivationZone$ Command | SpellDescription$ Sacrifice three Foods: Add {W}{U}{B}{R}{G}. Activate only once each turn and only during your turn. +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigDraw | TriggerDescription$ Whenever Chaos ensues, you become the Monarch. If you are already the Monarch, draw a card. +SVar:TrigDraw:DB$ Draw | Defined$ You | ConditionCheckSVar$ X | ConditionSVarCompare$ EQ1 | SubAbility$ DBMonarch +SVar:DBMonarch:DB$ BecomeMonarch | Defined$ You | ConditionCheckSVar$ X | ConditionSVarCompare$ EQ0 +SVar:X:Count$Monarch.1.0 +DeckHas:Ability$Sacrifice & Type$Food +Oracle:Artifacts are Foods in addition to their other types (They have "{2}, {T}, Sacrifice this artifact: You gain 3 life.")\nSacrifice three Foods: Add {W}{U}{B}{R}{G}. Activate only once each turn and only during your turn.\nWhenever Chaos ensues, you become the Monarch. If you are already the Monarch, draw a card. diff --git a/forge-gui/res/cardsfolder/t/the_windy_city.txt b/forge-gui/res/cardsfolder/t/the_windy_city.txt new file mode 100644 index 000000000000..52f21335207a --- /dev/null +++ b/forge-gui/res/cardsfolder/t/the_windy_city.txt @@ -0,0 +1,15 @@ +Name:The Windy City +ManaCost:no cost +Types:Plane Chicago +T:Mode$ PlaneswalkedTo | ValidCard$ Card.Self | Execute$ TrigPut | TriggerDescription$ When you planeswalk here and at the beginning of your upkeep, put a flying counter on target nontoken creature you control without flying. +T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | Execute$ TrigPut | TriggerZones$ Command | Secondary$ True | TriggerDescription$ When you planeswalk here and at the beginning of your upkeep, put a flying counter on target nontoken creature you control without flying. +SVar:TrigPut:DB$ PutCounter | ValidTgts$ Creature.!token+YouCtrl+withoutFlying | TgtPrompt$ Select target nontoken creature you control without flying | CounterType$ Flying | CounterNum$ 1 +T:Mode$ ChaosEnsues | TriggerZones$ Command | Execute$ TrigExile | TriggerDescription$ Whenever chaos ensues, exile target creature with flying. For as long as it remains exiled, its owner may cast it by paying {2} rather than paying its mana cost. +SVar:TrigExile:DB$ ChangeZone | Origin$ Battlefield | Destination$ Exile | ValidTgts$ Creature.withFlying | TgtPrompt$ Select target creature with flying | RememberChanged$ True | SubAbility$ DBEffect +SVar:DBEffect:DB$ Effect | StaticAbilities$ STPlay | RememberObjects$ Remembered | Duration$ Permanent | ForgetOnMoved$ Exile | SubAbility$ DBCleanup +SVar:STPlay:Mode$ Continuous | MayPlay$ True | MayPlayPlayer$ CardOwner | MayPlayAltManaCost$ 2 | Affected$ Card.IsRemembered+nonLand | AffectedZone$ Exile | Description$ You may cast the card by paying {2} rather than paying its mana cost. +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +T:Mode$ PlaneswalkedFrom | ValidCard$ Plane.Self | Execute$ TrigRemove | TriggerDescription$ When you planeswalk away from CARDNAME, remove all flying counters from all creatures. +SVar:TrigRemove:DB$ RemoveCounterAll | ValidCards$ Creature | CounterType$ Flying | AllCounters$ True +SVar:AIRollPlanarDieParams:Mode$ Always +Oracle:When you planeswalk here and at the beginning of your upkeep, put a flying counter on target nontoken creature you control without flying.\nWhenever chaos ensues, exile target creature with flying. For as long as it remains exiled, its owner may cast it by paying {2} rather than paying its mana cost.\nWhen you planeswalk away from The Windy City, remove all flying counters from all creatures. diff --git a/forge-gui/res/editions/Black Lotus Unknown Planechase.txt b/forge-gui/res/editions/Black Lotus Unknown Planechase.txt index ba20174f6d2d..62ce48ff2bbc 100644 --- a/forge-gui/res/editions/Black Lotus Unknown Planechase.txt +++ b/forge-gui/res/editions/Black Lotus Unknown Planechase.txt @@ -58,3 +58,19 @@ PLA043 C That's Enough Slices @ PLA044 C The Command Zone @ PLA045 C The Pro Tour @ PLA046 C Year-End Review @ + +[EnchantmentTypes] +Entropy +Omenpath +[ArtifactTypes] +Hat +[PlanarTypes] +Amsterdam +Blind Eternities +Bloomburrow +Chicago +Duskmourn +Hell +Las Vegas +MagicCon +Thunder Junction diff --git a/forge-gui/res/tokenscripts/c_a_hat_sac.txt b/forge-gui/res/tokenscripts/c_a_hat_sac.txt new file mode 100644 index 000000000000..6d8c22fab507 --- /dev/null +++ b/forge-gui/res/tokenscripts/c_a_hat_sac.txt @@ -0,0 +1,5 @@ +Name:Hat Token +ManaCost:no cost +Types:Artifact Hat +A:AB$ Token | Cost$ 1 T Sac<1/CARDNAME/this token> | TokenScript$ w_1_1_rabbit | SpellDescription$ Create a 1/1 white Rabbit creature token. +Oracle:{1}, {T}, Sacrifice this artifact: Create a 1/1 white Rabbit creature token. diff --git a/forge-gui/res/tokenscripts/c_a_pizza_sac.txt b/forge-gui/res/tokenscripts/c_a_pizza_sac.txt new file mode 100644 index 000000000000..663f0364bdfb --- /dev/null +++ b/forge-gui/res/tokenscripts/c_a_pizza_sac.txt @@ -0,0 +1,5 @@ +Name:Pizza Token +ManaCost:no cost +Types:Artifact Food +A:AB$ GainLife | Cost$ 2 T Sac<1/CARDNAME/this token> | LifeAmount$ 6 | SpellDescription$ You gain 6 life. +Oracle:{2}, {T}, Sacrifice this token: You gain 6 life. diff --git a/forge-gui/res/tokenscripts/c_e_entropy_sac_chaos.txt b/forge-gui/res/tokenscripts/c_e_entropy_sac_chaos.txt new file mode 100644 index 000000000000..40e65909446f --- /dev/null +++ b/forge-gui/res/tokenscripts/c_e_entropy_sac_chaos.txt @@ -0,0 +1,5 @@ +Name:Entropy Token +ManaCost:no cost +Types:Enchantment Entropy +A:AB$ ChaosEnsues | Cost$ Sac<1/CARDNAME/this enchantment> | SorcerySpeed$ True | SpellDescription$ Chaos ensues. Activate only as a sorcery. +Oracle:Sacrifice this enchantment: Chaos ensues. Activate only as a sorcery. diff --git a/forge-gui/res/tokenscripts/c_e_omenpath_sac_planeswalk.txt b/forge-gui/res/tokenscripts/c_e_omenpath_sac_planeswalk.txt new file mode 100644 index 000000000000..cf4f5d93b261 --- /dev/null +++ b/forge-gui/res/tokenscripts/c_e_omenpath_sac_planeswalk.txt @@ -0,0 +1,5 @@ +Name:Omenpath Token +ManaCost:no cost +Types:Enchantment Omenpath +A:AB$ Planeswalk | Cost$ Sac<1/CARDNAME/this enchantment> | SorcerySpeed$ True | SpellDescription$ Planeswalk. Activate only as a sorcery. +Oracle:Sacrifice this enchantment: Planeswalk. Activate only as a sorcery. diff --git a/forge-gui/res/tokenscripts/r_1_1_performer_flying.txt b/forge-gui/res/tokenscripts/r_1_1_performer_flying.txt new file mode 100644 index 000000000000..9562c7de958c --- /dev/null +++ b/forge-gui/res/tokenscripts/r_1_1_performer_flying.txt @@ -0,0 +1,7 @@ +Name:Performer Token +ManaCost:no cost +Colors:red +Types:Creature Performer +PT:1/1 +K:Flying +Oracle:Flying diff --git a/forge-gui/res/tokenscripts/r_1_1_performer_flying_haste.txt b/forge-gui/res/tokenscripts/r_1_1_performer_flying_haste.txt new file mode 100644 index 000000000000..404085c80084 --- /dev/null +++ b/forge-gui/res/tokenscripts/r_1_1_performer_flying_haste.txt @@ -0,0 +1,8 @@ +Name:Performer Token +ManaCost:no cost +Colors:red +Types:Creature Performer +PT:1/1 +K:Flying +K:Haste +Oracle:Flying, haste diff --git a/forge-gui/res/tokenscripts/r_2_2_warrior_haste_coward.txt b/forge-gui/res/tokenscripts/r_2_2_warrior_haste_coward.txt new file mode 100644 index 000000000000..0c5471526545 --- /dev/null +++ b/forge-gui/res/tokenscripts/r_2_2_warrior_haste_coward.txt @@ -0,0 +1,8 @@ +Name:Warrior Token +ManaCost:no cost +Colors:red +Types:Creature Warrior +PT:2/2 +K:Haste +S:Mode$ CantBlockBy | ValidBlocker$ Creature.Coward | ValidAttacker$ Creature.Warrior | Description$ Cowards can't block Warriors. +Oracle:Haste\nCowards can't block Warriors.