diff --git a/forge-gui/res/cardsfolder/a/acclaimed_contender.txt b/forge-gui/res/cardsfolder/a/acclaimed_contender.txt index 1b3a5160860..ece7ecc7c25 100644 --- a/forge-gui/res/cardsfolder/a/acclaimed_contender.txt +++ b/forge-gui/res/cardsfolder/a/acclaimed_contender.txt @@ -4,4 +4,5 @@ Types:Creature Human Knight PT:3/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | IsPresent$ Knight.YouCtrl+Other | Execute$ TrigDig | TriggerDescription$ When CARDNAME enters the battlefield, if you control another Knight, look at the top five cards of your library. You may reveal a Knight, Aura, Equipment, or legendary artifact card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. SVar:TrigDig:DB$ Dig | DigNum$ 5 | ChangeNum$ 1 | ChangeValid$ Card.Knight,Aura,Equipment,Artifact.Legendary | RestRandomOrder$ True +DeckHints:Type$Knight Oracle:When Acclaimed Contender enters the battlefield, if you control another Knight, look at the top five cards of your library. You may reveal a Knight, Aura, Equipment, or legendary artifact card from among them and put it into your hand. Put the rest on the bottom of your library in a random order. diff --git a/forge-gui/res/cardsfolder/a/animating_faerie_bring_to_life.txt b/forge-gui/res/cardsfolder/a/animating_faerie_bring_to_life.txt index c499d5251d5..b33f34e8395 100644 --- a/forge-gui/res/cardsfolder/a/animating_faerie_bring_to_life.txt +++ b/forge-gui/res/cardsfolder/a/animating_faerie_bring_to_life.txt @@ -13,4 +13,5 @@ ManaCost:2 U Types:Sorcery Adventure A:SP$ Animate | Cost$ 2 U | ValidTgts$ Artifact.nonCreature+YouCtrl | TgtPrompt$ Select noncreature artifact | Power$ 0 | Toughness$ 0 | Types$ Artifact,Creature | RemoveCardTypes$ True | Permanent$ True | SubAbility$ DBPutCounter | SpellDescription$ Target noncreature artifact you control becomes a 0/0 artifact creature. Put four +1/+1 counters on it. SVar:DBPutCounter:DB$ PutCounter | Defined$ Targeted | CounterType$ P1P1 | CounterNum$ 4 +DeckHas:Ability$Counters Oracle:Target noncreature artifact you control becomes a 0/0 artifact creature. Put four +1/+1 counters on it. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/a/ardenvale_paladin.txt b/forge-gui/res/cardsfolder/a/ardenvale_paladin.txt index 74fbc6bddca..c2dea1ba1f8 100644 --- a/forge-gui/res/cardsfolder/a/ardenvale_paladin.txt +++ b/forge-gui/res/cardsfolder/a/ardenvale_paladin.txt @@ -3,4 +3,5 @@ ManaCost:3 W Types:Creature Human Knight PT:2/5 K:etbCounter:P1P1:1:Adamant$ White:Adamant — If at least three white mana was spent to cast this spell, CARDNAME enters the battlefield with a +1/+1 counter on it. +DeckHas:Ability$Counters Oracle:Adamant — If at least three white mana was spent to cast this spell, Ardenvale Paladin enters the battlefield with a +1/+1 counter on it. diff --git a/forge-gui/res/cardsfolder/b/bake_into_a_pie.txt b/forge-gui/res/cardsfolder/b/bake_into_a_pie.txt index 1f226e4432c..678b45079ff 100644 --- a/forge-gui/res/cardsfolder/b/bake_into_a_pie.txt +++ b/forge-gui/res/cardsfolder/b/bake_into_a_pie.txt @@ -3,5 +3,5 @@ ManaCost:2 B B Types:Instant A:SP$ Destroy | Cost$ 2 B B | ValidTgts$ Creature | TgtPrompt$ Select target creature | SubAbility$ DBToken | SpellDescription$ Destroy target creature. Create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld -DeckHas:Ability$LifeGain +DeckHas:Ability$LifeGain & Ability$Token Oracle:Destroy target creature. Create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") diff --git a/forge-gui/res/cardsfolder/b/barrow_witches.txt b/forge-gui/res/cardsfolder/b/barrow_witches.txt index 1a1c3481fc6..816a566ad72 100644 --- a/forge-gui/res/cardsfolder/b/barrow_witches.txt +++ b/forge-gui/res/cardsfolder/b/barrow_witches.txt @@ -4,4 +4,5 @@ Types:Creature Human Warlock PT:3/4 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigChangeZone | TriggerDescription$ When CARDNAME enters the battlefield, return target Knight card from your graveyard to your hand. SVar:TrigChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Hand | ValidTgts$ Card.Knight+YouOwn | TgtPrompt$ Select target Knight card in your graveyard +DeckHints:Type$Knight Oracle:When Barrow Witches enters the battlefield, return target Knight card from your graveyard to your hand. diff --git a/forge-gui/res/cardsfolder/b/bartered_cow.txt b/forge-gui/res/cardsfolder/b/bartered_cow.txt index 323eac840f0..2534c24e0bc 100644 --- a/forge-gui/res/cardsfolder/b/bartered_cow.txt +++ b/forge-gui/res/cardsfolder/b/bartered_cow.txt @@ -7,4 +7,5 @@ T:Mode$ Discarded | ValidCard$ Card.Self | Execute$ TrigToken | Secondary$ True SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld SVar:SacMe:1 SVar:DiscardMe:3 +DeckHas:Ability$Token & Ability$LifeGain Oracle:When Bartered Cow dies or when you discard it, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") diff --git a/forge-gui/res/cardsfolder/b/blacklance_paragon.txt b/forge-gui/res/cardsfolder/b/blacklance_paragon.txt index 48693c7c552..7a27594d5d1 100644 --- a/forge-gui/res/cardsfolder/b/blacklance_paragon.txt +++ b/forge-gui/res/cardsfolder/b/blacklance_paragon.txt @@ -5,4 +5,5 @@ PT:3/1 K:Flash T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ When CARDNAME enters the battlefield, target Knight gains deathtouch and lifelink until end of turn. SVar:TrigPump:DB$ Pump | ValidTgts$ Knight | TgtPrompt$ Select target Knight | KW$ Deathtouch & Lifelink +DeckHints:Type$Knight Oracle:Flash\nWhen Blacklance Paragon enters the battlefield, target Knight gains deathtouch and lifelink until end of turn. diff --git a/forge-gui/res/cardsfolder/b/bog_naughty.txt b/forge-gui/res/cardsfolder/b/bog_naughty.txt index 61093abd209..d9a4996f622 100644 --- a/forge-gui/res/cardsfolder/b/bog_naughty.txt +++ b/forge-gui/res/cardsfolder/b/bog_naughty.txt @@ -4,5 +4,6 @@ Types:Creature Faerie PT:3/3 K:Flying A:AB$ Pump | Cost$ 2 B Sac<1/Food> | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ -3 | NumDef$ -3 | IsCurse$ True | SpellDescription$ Target creature gets -3/-3 until end of turn. +SVar:AIPreference:SacCost$Card.namedFood AI:RemoveDeck:All Oracle:Flying\n{2}{B}, Sacrifice a Food: Target creature gets -3/-3 until end of turn. diff --git a/forge-gui/res/cardsfolder/b/bramblefort_fink.txt b/forge-gui/res/cardsfolder/b/bramblefort_fink.txt index ed15748b5d0..3c1cd172d0c 100644 --- a/forge-gui/res/cardsfolder/b/bramblefort_fink.txt +++ b/forge-gui/res/cardsfolder/b/bramblefort_fink.txt @@ -3,5 +3,5 @@ ManaCost:1 G Types:Creature Ouphe PT:2/2 A:AB$ Animate | Cost$ 8 | Defined$ Self | Power$ 10 | Toughness$ 10 | IsPresent$ Planeswalker.YouCtrl+Oko | SpellDescription$ CARDNAME has base power and toughness 10/10 until end of turn. Activate this ability only if you control an Oko planeswalker. -AI:RemoveDeck:Random +DeckNeeds:Type$Oko Oracle:{8}: Bramblefort Fink has base power and toughness 10/10 until end of turn. Activate this ability only if you control an Oko planeswalker. diff --git a/forge-gui/res/cardsfolder/b/brimstone_trebuchet.txt b/forge-gui/res/cardsfolder/b/brimstone_trebuchet.txt index af647647b9a..bc41fe16374 100644 --- a/forge-gui/res/cardsfolder/b/brimstone_trebuchet.txt +++ b/forge-gui/res/cardsfolder/b/brimstone_trebuchet.txt @@ -8,4 +8,5 @@ A:AB$ DealDamage | Cost$ T | NumDmg$ 1 | Defined$ Player.Opponent | SpellDescrip T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Knight+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigUntap | TriggerDescription$ Whenever a Knight enters the battlefield under your control, untap CARDNAME. SVar:TrigUntap:DB$ Untap | Defined$ Self SVar:BuffedBy:Knight +DeckHints:Type$Knight Oracle:Defender, reach\n{T}: Brimstone Trebuchet deals 1 damage to each opponent.\nWhenever a Knight enters the battlefield under your control, untap Brimstone Trebuchet. diff --git a/forge-gui/res/cardsfolder/b/burning_yard_trainer.txt b/forge-gui/res/cardsfolder/b/burning_yard_trainer.txt index 2454f447de1..2cc5ade55dc 100644 --- a/forge-gui/res/cardsfolder/b/burning_yard_trainer.txt +++ b/forge-gui/res/cardsfolder/b/burning_yard_trainer.txt @@ -7,4 +7,5 @@ K:Trample T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigPump | TriggerDescription$ When CARDNAME enters the battlefield, another target Knight you control gets +2/+2 and gains trample and haste until end of turn. SVar:TrigPump:DB$ Pump | ValidTgts$ Knight.Other+YouCtrl | TgtPrompt$ Select another target Knight you control | NumAtt$ 2 | NumDef$ 2 | KW$ Trample & Haste SVar:PlayMain1:TRUE +DeckHints:Type$Knight Oracle:Trample, haste\nWhen Burning-Yard Trainer enters the battlefield, another target Knight you control gets +2/+2 and gains trample and haste until end of turn. diff --git a/forge-gui/res/cardsfolder/c/cauldrons_gift.txt b/forge-gui/res/cardsfolder/c/cauldrons_gift.txt index da233a0b65b..adf025adbad 100644 --- a/forge-gui/res/cardsfolder/c/cauldrons_gift.txt +++ b/forge-gui/res/cardsfolder/c/cauldrons_gift.txt @@ -4,4 +4,5 @@ Types:Sorcery A:SP$ Mill | Cost$ 4 B | NumCards$ 4 | Defined$ You | SubAbility$ DBChangeZone | ConditionCheckSVar$ X | References$ X | SpellDescription$ Adamant — If at least three black mana was spent to cast this spell, put the top four cards of your library into your graveyard. You may choose a creature card in your graveyard. If you do, return it to the battlefield with an additional +1/+1 counter on it. SVar:DBChangeZone:DB$ ChangeZone | Origin$ Graveyard | Destination$ Battlefield | ChangeType$ Creature.YouOwn | Hidden$ True | ChangeNum$ 1 | WithCounters$ P1P1_1 SVar:X:Count$Adamant.Black.1.0 +DeckHas:Ability$Counters Oracle:Adamant — If at least three black mana was spent to cast this spell, put the top four cards of your library into your graveyard.\nYou may choose a creature card in your graveyard. If you do, return it to the battlefield with an additional +1/+1 counter on it. diff --git a/forge-gui/res/cardsfolder/c/chittering_witch.txt b/forge-gui/res/cardsfolder/c/chittering_witch.txt index f2130f0197b..234aa152bdf 100644 --- a/forge-gui/res/cardsfolder/c/chittering_witch.txt +++ b/forge-gui/res/cardsfolder/c/chittering_witch.txt @@ -6,5 +6,6 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigToken:DB$ Token | TokenAmount$ X | TokenScript$ b_1_1_rat | TokenOwner$ You | LegacyImage$ b 1 1 rat eld | References$ X SVar:X:PlayerCountOpponents$Amount A:AB$ Pump | Cost$ 1 B Sac<1/Creature> | ValidTgts$ Creature | TgtPrompt$ Select target creature | NumAtt$ -2 | NumDef$ -2 | IsCurse$ True | SpellDescription$ Target creature gets -2/-2 until end of turn. -AI:RemoveDeck:All +SVar:AIPreference:SacCost$Creature.token,Creature.cmcLE1 +DeckHas:Ability$Token Oracle:When Chittering Witch enters the battlefield, create a number of 1/1 black Rat creature tokens equal to the number of opponents you have.\n{1}{B}, Sacrifice a creature: Target creature gets -2/-2 until end of turn. diff --git a/forge-gui/res/cardsfolder/c/curious_pair_treats_to_share.txt b/forge-gui/res/cardsfolder/c/curious_pair_treats_to_share.txt index 7ccbfb39c31..059f9f813cc 100644 --- a/forge-gui/res/cardsfolder/c/curious_pair_treats_to_share.txt +++ b/forge-gui/res/cardsfolder/c/curious_pair_treats_to_share.txt @@ -11,4 +11,5 @@ Name:Treats to Share ManaCost:G Types:Sorcery Adventure A:SP$ Token | Cost$ G | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld | SpellDescription$ Create a Food token. (Then exile this card. You may cast the creature later from exile.) +DeckHas:Ability$Token & Ability$LifeGain Oracle:Create a Food token. (Then exile this card. You may cast the creature later from exile.) diff --git a/forge-gui/res/cardsfolder/d/doom_foretold.txt b/forge-gui/res/cardsfolder/d/doom_foretold.txt index b4a14470365..cf616e78207 100644 --- a/forge-gui/res/cardsfolder/d/doom_foretold.txt +++ b/forge-gui/res/cardsfolder/d/doom_foretold.txt @@ -10,4 +10,5 @@ SVar:DBGainLife:DB$ GainLife | LifeAmount$ 2 | Defined$ You | ConditionDefined$ SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ w_2_2_knight_vigilance | TokenOwner$ You | LegacyImage$ w 2 2 knight vigilance eld | ConditionDefined$ Remembered | ConditionPresent$ Card | ConditionCompare$ EQ0 | SubAbility$ DBSac SVar:DBSac:DB$ SacrificeAll | Defined$ Self | ConditionDefined$ Remembered | ConditionPresent$ Card | ConditionCompare$ EQ0 | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +DeckHas:Ability$Token & Ability$LifeGain Oracle:At the beginning of each player's upkeep, that player sacrifices a nonland, nontoken permanent. If that player can't, they discard a card, they lose 2 life, you draw a card, you gain 2 life, you create a 2/2 white Knight creature token with vigilance, then you sacrifice Doom Foretold. diff --git a/forge-gui/res/cardsfolder/d/dwarven_mine.txt b/forge-gui/res/cardsfolder/d/dwarven_mine.txt index 197f174e6af..234161241c1 100644 --- a/forge-gui/res/cardsfolder/d/dwarven_mine.txt +++ b/forge-gui/res/cardsfolder/d/dwarven_mine.txt @@ -6,4 +6,5 @@ SVar:LandTapped:DB$ Tap | Defined$ Self | ETB$ True | ConditionPresent$ Mountain SVar:MoveToPlay:DB$ ChangeZone | Defined$ Self | Origin$ All | Destination$ Battlefield T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+untapped | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters the battlefield untapped, create a 1/1 red Dwarf creature token. SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ r_1_1_dwarf | TokenOwner$ You | LegacyImage$ r 1 1 dwarf eld +DeckHas:Ability$Token Oracle:({T}: Add {R}.)\nDwarven Mine enters the battlefield tapped unless you control three or more other Mountains.\nWhen Dwarven Mine enters the battlefield untapped, create a 1/1 red Dwarf creature token. diff --git a/forge-gui/res/cardsfolder/e/elite_headhunter.txt b/forge-gui/res/cardsfolder/e/elite_headhunter.txt index cee3335afdc..acebe8c24a8 100644 --- a/forge-gui/res/cardsfolder/e/elite_headhunter.txt +++ b/forge-gui/res/cardsfolder/e/elite_headhunter.txt @@ -4,4 +4,5 @@ Types:Creature Human Knight PT:2/3 K:Menace A:AB$ DealDamage | Cost$ BR BR BR Sac<1/Creature.Other,Artifact/another creature or an artifact> | ValidTgts$ Creature,Planeswalker | TgtPrompt$ Select target creature or planeswalker | NumDmg$ 2 | SpellDescription$ CARDNAME deals 2 damage to target creature or planeswalker. +SVar:AIPreference:SacCost$Creature.token,Artifact.token,Creature.cmcLE1,Artifact.cmcEQ1 Oracle:Menace (This creature can't be blocked except by two or more creatures.)\n{B/R}{B/R}{B/R}, Sacrifice another creature or an artifact: Elite Headhunter deals 2 damage to target creature or planeswalker. diff --git a/forge-gui/res/cardsfolder/e/embereth_paladin.txt b/forge-gui/res/cardsfolder/e/embereth_paladin.txt index 456f35744c0..d96911e06cf 100644 --- a/forge-gui/res/cardsfolder/e/embereth_paladin.txt +++ b/forge-gui/res/cardsfolder/e/embereth_paladin.txt @@ -4,4 +4,5 @@ Types:Creature Human Knight PT:4/1 K:Haste K:etbCounter:P1P1:1:Adamant$ Red:Adamant — If at least three red mana was spent to cast this spell, CARDNAME enters the battlefield with a +1/+1 counter on it. +DeckHas:Ability$Counters Oracle:Haste\nAdamant — If at least three red mana was spent to cast this spell, Embereth Paladin enters the battlefield with a +1/+1 counter on it. diff --git a/forge-gui/res/cardsfolder/e/emry_lurker_of_the_loch.txt b/forge-gui/res/cardsfolder/e/emry_lurker_of_the_loch.txt index ea83b59b17c..4881ee80dc6 100644 --- a/forge-gui/res/cardsfolder/e/emry_lurker_of_the_loch.txt +++ b/forge-gui/res/cardsfolder/e/emry_lurker_of_the_loch.txt @@ -5,6 +5,7 @@ PT:1/2 S:Mode$ ReduceCost | ValidCard$ Card.Self | Type$ Spell | Amount$ X | References$ X | EffectZone$ All | Description$ This spell costs {1} less to cast for each artifact you control. SVar:X:Count$Valid Artifact.YouCtrl DeckNeeds:Type$Artifact +DeckHas:Ability$Graveyard T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigMill | TriggerDescription$ When CARDNAME enters the battlefield, put the top four cards of your library into your graveyard. SVar:TrigMill:DB$ Mill | NumCards$ 4 | Defined$ You A:AB$ Effect | Cost$ T | TgtZone$ Graveyard | ValidTgts$ Artifact.YouOwn | TgtPrompt$ Select target artifact card in your graveyard | SpellDescription$ Choose target artifact card in your graveyard. You may cast that card this turn. | RememberObjects$ Targeted | StaticAbilities$ STPlay | ExileOnMoved$ Graveyard diff --git a/forge-gui/res/cardsfolder/e/enchanted_carriage.txt b/forge-gui/res/cardsfolder/e/enchanted_carriage.txt index 99f011ade39..c01ee3d9b83 100644 --- a/forge-gui/res/cardsfolder/e/enchanted_carriage.txt +++ b/forge-gui/res/cardsfolder/e/enchanted_carriage.txt @@ -5,4 +5,5 @@ PT:4/4 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters the battlefield, create two 1/1 white Goblin creature tokens. SVar:TrigToken:DB$ Token | TokenAmount$ 2 | TokenScript$ w_1_1_mouse | TokenOwner$ You | LegacyImage$ w 1 1 mouse eld K:Crew:2 +DeckHas:Ability$Token Oracle:When Enchanted Carriage enters the battlefield, create two 1/1 white Mouse creature tokens.\nCrew 2 (Tap any number of creatures you control with total power 2 or more: This Vehicle becomes an artifact creature until end of turn.) diff --git a/forge-gui/res/cardsfolder/e/eye_collector.txt b/forge-gui/res/cardsfolder/e/eye_collector.txt index d7c466491f5..fb9a8ce9256 100644 --- a/forge-gui/res/cardsfolder/e/eye_collector.txt +++ b/forge-gui/res/cardsfolder/e/eye_collector.txt @@ -5,4 +5,5 @@ PT:1/1 K:Flying T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigMill | TriggerZones$ Battlefield | TriggerDescription$ Whenever CARDNAME deals combat damage to a player, each player puts the top card of their library into their graveyard. SVar:TrigMill:DB$Mill | NumCards$ 1 | Defined$ Player +DeckHas:Ability$Graveyard Oracle:Flying\nWhenever Eye Collector deals combat damage to a player, each player puts the top card of their library into their graveyard. diff --git a/forge-gui/res/cardsfolder/f/fae_of_wishes_granted.txt b/forge-gui/res/cardsfolder/f/fae_of_wishes_granted.txt index a10b91bf29e..9745ecee112 100644 --- a/forge-gui/res/cardsfolder/f/fae_of_wishes_granted.txt +++ b/forge-gui/res/cardsfolder/f/fae_of_wishes_granted.txt @@ -4,7 +4,7 @@ Types:Creature Faerie Wizard PT:1/4 K:Flying A:AB$ ChangeZone | Cost$ 1 U Discard<2/Card> | Origin$ Battlefield | Destination$ Hand | SpellDescription$ Return CARDNAME to its owner's hand. -Oracle:Flying\{1}{U}, Discard two cards: Return Fae of Wishes to its owner's hand. +Oracle:Flying\n{1}{U}, Discard two cards: Return Fae of Wishes to its owner's hand. AlternateMode:Adventure ALTERNATE diff --git a/forge-gui/res/cardsfolder/f/faerie_formation.txt b/forge-gui/res/cardsfolder/f/faerie_formation.txt index d5951dffad7..8802757265b 100644 --- a/forge-gui/res/cardsfolder/f/faerie_formation.txt +++ b/forge-gui/res/cardsfolder/f/faerie_formation.txt @@ -5,4 +5,5 @@ PT:5/4 K:Flying A:AB$ Token | Cost$ 3 U | TokenAmount$ 1 | TokenScript$ u_1_1_faerie_flying | TokenOwner$ You | LegacyImage$ u 1 1 faerie flying eld | SubAbility$ DBDraw | SpellDescription$ Create a 1/1 blue Faerie creature token with flying. Draw a card. SVar:DBDraw:DB$Draw | NumCards$ 1 +DeckHas:Ability$Token Oracle:Flying\n{3}{U}: Create a 1/1 blue Faerie creature token with flying. Draw a card. diff --git a/forge-gui/res/cardsfolder/f/faerie_vandal.txt b/forge-gui/res/cardsfolder/f/faerie_vandal.txt index d75cabc8602..6a891c9ee71 100644 --- a/forge-gui/res/cardsfolder/f/faerie_vandal.txt +++ b/forge-gui/res/cardsfolder/f/faerie_vandal.txt @@ -6,5 +6,5 @@ K:Flash K:Flying T:Mode$ Drawn | ValidCard$ Card.YouCtrl | Number$ 2 | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever you draw your second card each turn, put a +1/+1 counter on CARDNAME. SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 -AI:RemoveDeck:Random +DeckHas:Ability$Counters Oracle:Flash\nFlying\nWhenever you draw your second card each turn, put a +1/+1 counter on Faerie Vandal. diff --git a/forge-gui/res/cardsfolder/f/feasting_troll_king.txt b/forge-gui/res/cardsfolder/f/feasting_troll_king.txt index e5b6b4a381f..75c327c6355 100644 --- a/forge-gui/res/cardsfolder/f/feasting_troll_king.txt +++ b/forge-gui/res/cardsfolder/f/feasting_troll_king.txt @@ -8,4 +8,6 @@ T:Mode$ ChangesZone | ValidCard$ Card.wasCastFromHand+Self | Destination$ Battle SVar:TrigToken:DB$ Token | TokenAmount$ 3 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld A:AB$ ChangeZone | Cost$ Sac<3/Food> | Origin$ Graveyard | Destination$ Battlefield | ActivationZone$ Graveyard | PlayerTurn$ True | SpellDescription$ Return CARDNAME from your graveyard to the battlefield. Activate this ability only during your turn. SVar:DiscardMe:1 +SVar:AIPreference:SacCost$Card.namedFood +DeckHas:Ability$Token & Ability$LifeGain Oracle:Vigilance, trample\nWhen Feasting Troll King enters the battlefield, if you cast it from your hand, create three Food tokens.\nSacrifice three Foods: Return Feasting Troll King from your graveyard to the battlefield. Activate this ability only during your turn. diff --git a/forge-gui/res/cardsfolder/f/fell_the_pheasant.txt b/forge-gui/res/cardsfolder/f/fell_the_pheasant.txt index e1c9e508958..d4f07a28042 100644 --- a/forge-gui/res/cardsfolder/f/fell_the_pheasant.txt +++ b/forge-gui/res/cardsfolder/f/fell_the_pheasant.txt @@ -3,4 +3,5 @@ ManaCost:1 G Types:Instant A:SP$ DealDamage | Cost$ 1 G | ValidTgts$ Creature.withFlying | TgtPrompt$ Select target creature with flying | NumDmg$ 5 | SubAbility$ DBToken | SpellDescription$ CARDNAME deals 5 damage to target creature with flying. Create a card token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld +DeckHas:Ability$Token & Ability$LifeGain Oracle:Fell the Pheasant deals 5 damage to target creature with flying. Create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") diff --git a/forge-gui/res/cardsfolder/f/fierce_witchstalker.txt b/forge-gui/res/cardsfolder/f/fierce_witchstalker.txt index 73a5b1be5a4..e009166fc65 100644 --- a/forge-gui/res/cardsfolder/f/fierce_witchstalker.txt +++ b/forge-gui/res/cardsfolder/f/fierce_witchstalker.txt @@ -5,4 +5,5 @@ PT:4/4 K:Trample T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters the battlefield, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld +DeckHas:Ability$Token & Ability$LifeGain Oracle:Trample\nWhen Fierce Witchstalker enters the battlefield, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") diff --git a/forge-gui/res/cardsfolder/f/flaxen_intruder_welcome_home.txt b/forge-gui/res/cardsfolder/f/flaxen_intruder_welcome_home.txt index d64c8abdf1e..b70c801f735 100644 --- a/forge-gui/res/cardsfolder/f/flaxen_intruder_welcome_home.txt +++ b/forge-gui/res/cardsfolder/f/flaxen_intruder_welcome_home.txt @@ -14,4 +14,5 @@ Name:Welcome Home ManaCost:5 G G Types:Sorcery Adventure A:SP$ Token | Cost$ 5 G G | TokenAmount$ 3 | TokenScript$ g_2_2_bear | TokenOwner$ You | LegacyImage$ g 2 2 bear eld | SpellDescription$ Create three 2/2 green Bear creature tokens. +DeckHas:Ability$Token Oracle:Create three 2/2 green Bear creature tokens. diff --git a/forge-gui/res/cardsfolder/f/foreboding_fruit.txt b/forge-gui/res/cardsfolder/f/foreboding_fruit.txt index b0137c2de2b..7dc0cc26cff 100644 --- a/forge-gui/res/cardsfolder/f/foreboding_fruit.txt +++ b/forge-gui/res/cardsfolder/f/foreboding_fruit.txt @@ -5,4 +5,5 @@ A:SP$ Draw | Cost$ 2 B | NumCards$ 2 | ValidTgts$ Player | TgtPrompt$ Choose a p SVar:DBLoseLife:DB$ LoseLife | LifeAmount$ 2 | Defined$ Targeted | SubAbility$ DBToken SVar:DBToken:DB$ Token | TokenAmount$ X | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld | References$ X SVar:X:Count$Adamant.Black.1.0 +DeckHas:Ability$Token & Ability$LifeGain Oracle:Target player draws two cards and loses 2 life.\nAdamant — If at least three black mana was spent to cast this spell, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 2 life.") diff --git a/forge-gui/res/cardsfolder/f/fortifying_provisions.txt b/forge-gui/res/cardsfolder/f/fortifying_provisions.txt index 6db938168b6..ec983bfaa3a 100644 --- a/forge-gui/res/cardsfolder/f/fortifying_provisions.txt +++ b/forge-gui/res/cardsfolder/f/fortifying_provisions.txt @@ -5,4 +5,5 @@ S:Mode$ Continuous | Affected$ Creature.YouCtrl | AddToughness$ 1 | Description$ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters the battlefield, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld SVar:PlayMain1:TRUE +DeckHas:Ability$Token & Ability$LifeGain Oracle:Creatures you control get +0/+1.\nWhen Fortifying Provisions enters the battlefield, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") diff --git a/forge-gui/res/cardsfolder/g/garenbrig_paladin.txt b/forge-gui/res/cardsfolder/g/garenbrig_paladin.txt index 8c81772b74d..913a14caef0 100644 --- a/forge-gui/res/cardsfolder/g/garenbrig_paladin.txt +++ b/forge-gui/res/cardsfolder/g/garenbrig_paladin.txt @@ -4,4 +4,5 @@ Types:Creature Giant Knight PT:4/4 K:etbCounter:P1P1:1:Adamant$ Green:Adamant — If at least three green mana was spent to cast this spell, CARDNAME enters the battlefield with a +1/+1 counter on it. K:CantBeBlockedBy Creature.powerLE2 +DeckHas:Ability$Counters Oracle:Adamant — If at least three green mana was spent to cast this spell, Garenbrig Paladin enters the battlefield with a +1/+1 counter on it.\nGarenbrig Paladin can't be blocked by creatures with power 2 or less. diff --git a/forge-gui/res/cardsfolder/g/garenbrig_squire.txt b/forge-gui/res/cardsfolder/g/garenbrig_squire.txt index 853025f7b7f..3af555692a8 100644 --- a/forge-gui/res/cardsfolder/g/garenbrig_squire.txt +++ b/forge-gui/res/cardsfolder/g/garenbrig_squire.txt @@ -5,4 +5,5 @@ PT:2/2 T:Mode$ SpellCast | ValidCard$ Creature.AdventureCard | ValidActivatingPlayer$ You | Execute$ TrigPump | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a creature spell that has an Adventure, CARDNAME gets +1/+1 until end of turn. SVar:TrigPump:DB$ Pump | Defined$ Self | NumAtt$ 1 | NumDef$ 1 SVar:BuffedBy:Creature.AdventureCard +DeckHas:Ability$Counters Oracle:Whenever you cast a creature spell that has an Adventure, Garenbrig Squire gets +1/+1 until end of turn. (It doesn't need to have gone on the adventure first.) diff --git a/forge-gui/res/cardsfolder/g/giant_opportunity.txt b/forge-gui/res/cardsfolder/g/giant_opportunity.txt index 69b7f90d316..0b3beccb8a6 100644 --- a/forge-gui/res/cardsfolder/g/giant_opportunity.txt +++ b/forge-gui/res/cardsfolder/g/giant_opportunity.txt @@ -5,4 +5,5 @@ A:SP$ Sacrifice | Cost$ 2 G | SacValid$ Food | Defined$ You | Amount$ 2 | Option SVar:DBToken:DB$ Token | TokenAmount$ 1 | TokenScript$ g_7_7_giant | TokenOwner$ You | LegacyImage$ g 7 7 giant eld | ConditionDefined$ Remembered | ConditionPresent$ Food | ConditionCompare$ EQ2 | SubAbility$ DBToken2 SVar:DBToken2:DB$ Token | TokenAmount$ 3 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld | ConditionDefined$ Remembered | ConditionPresent$ Food | ConditionCompare$ EQ0 | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +DeckHas:Ability$Token & Ability$LifeGain Oracle:You may sacrifice two Foods. If you do, create a 7/7 green Giant creature token. Otherwise, create three Food tokens. (They're artifacts with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") diff --git a/forge-gui/res/cardsfolder/g/giants_skewer.txt b/forge-gui/res/cardsfolder/g/giants_skewer.txt index d2ecf989060..a26e51d6874 100644 --- a/forge-gui/res/cardsfolder/g/giants_skewer.txt +++ b/forge-gui/res/cardsfolder/g/giants_skewer.txt @@ -4,6 +4,6 @@ Types:Artifact Equipment S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 2 | AddToughness$ 1 | Description$ Equipped creature gets +2/+1. T:Mode$ DamageDone | ValidSource$ Creature.EquippedBy | ValidTarget$ Creature | CombatDamage$ True | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever equipped creature deals combat damage to a creature, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld -DeckHas:Ability$LifeGain +DeckHas:Ability$LifeGain & Ability$Token K:Equip:3 Oracle:Equipped creature gets +2/+1.\nWhenever equipped creature deals combat damage to a creature, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.")\nEquip {3} ({3}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/g/gilded_goose.txt b/forge-gui/res/cardsfolder/g/gilded_goose.txt index dd8cd58571c..56df22e390f 100644 --- a/forge-gui/res/cardsfolder/g/gilded_goose.txt +++ b/forge-gui/res/cardsfolder/g/gilded_goose.txt @@ -7,5 +7,5 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigFood:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld A:AB$ Token | Cost$ 1 G T | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld | SpellDescription$ Create a Food Token. A:AB$ Mana | Cost$ T Sac<1/Food> | Produced$ Any | SpellDescription$ Add one mana of any color. -DeckHas:Ability$LifeGain +DeckHas:Ability$LifeGain & Ability$Token Oracle:Flying\nWhen Gilded Goose enters the battlefield, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.")\n{1}{G}, {T}: Create a Food token.\n{T}, Sacrifice a Food: Add one mana of any color. diff --git a/forge-gui/res/cardsfolder/g/gingerbread_cabin.txt b/forge-gui/res/cardsfolder/g/gingerbread_cabin.txt index 4c04e707f06..a570fb9cba5 100644 --- a/forge-gui/res/cardsfolder/g/gingerbread_cabin.txt +++ b/forge-gui/res/cardsfolder/g/gingerbread_cabin.txt @@ -6,4 +6,5 @@ SVar:LandTapped:DB$ Tap | Defined$ Self | ETB$ True | ConditionPresent$ Forest.Y SVar:MoveToPlay:DB$ ChangeZone | Defined$ Self | Origin$ All | Destination$ Battlefield T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+untapped | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters the battlefield untapped, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life."). SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld +DeckHas:Ability$LifeGain & Ability$Token Oracle:({T}: Add {G}.)\nGingerbread Cabin enters the battlefield tapped unless you control three or more other Forests.\nWhen Gingerbread Cabin enters the battlefield untapped, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") diff --git a/forge-gui/res/cardsfolder/g/gingerbrute.txt b/forge-gui/res/cardsfolder/g/gingerbrute.txt index 2ae11388ef4..3a8562c2d5d 100644 --- a/forge-gui/res/cardsfolder/g/gingerbrute.txt +++ b/forge-gui/res/cardsfolder/g/gingerbrute.txt @@ -6,4 +6,5 @@ K:Haste A:AB$ Effect | Cost$ 1 | Name$ CARDNAME Effect | StaticAbilities$ KWPump | SpellDescription$ CARDNAME can't be blocked this turn except by creatures with haste. SVar:KWPump:Mode$ CantBlockBy | ValidAttacker$ Creature.EffectSource | ValidBlocker$ Creature.withoutHaste | EffectZone$ Command | Description$ EFFECTSOURCE can't be blocked this turn except by creatures with haste. A:AB$ GainLife | Cost$ 2 T Sac<1/CARDNAME> | LifeAmount$ 3 | SpellDescription$ You gain 3 life. +DeckHas:Ability$LifeGain Oracle:Haste\n{1}: Gingerbrute can't be blocked this turn except by creatures with haste.\n{2}, {T}, Sacrifice Gingerbrute: You gain 3 life. diff --git a/forge-gui/res/cardsfolder/g/gluttonous_troll.txt b/forge-gui/res/cardsfolder/g/gluttonous_troll.txt index 96c2f493bf0..62eed453ba4 100644 --- a/forge-gui/res/cardsfolder/g/gluttonous_troll.txt +++ b/forge-gui/res/cardsfolder/g/gluttonous_troll.txt @@ -7,6 +7,7 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigToken:DB$ Token | TokenAmount$ X | References$ X | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld SVar:X:PlayerCountOpponents$Amount SVar:PlayMain1:TRUE -DeckHas:Ability$Token +DeckHas:Ability$Token & Ability$LifeGain +SVar:AIPreference:SacCost$Card.token,Card.cmcEQ1,Card.cmcEQ2 A:AB$ Pump | Cost$ 1 G Sac<1/Permanent.Other/another nonland permanent> | NumAtt$ +2 | NumDef$ +2 | SpellDescription$ CARDNAME gets +2/+2 until end of turn. Oracle:Trample\nWhen Gluttonous Troll enters the battlefield, create a number of Food tokens equal to the number of opponents you have. (Food tokens are artifacts with "{2}, {T}, Sacrifice this artifact: You gain 3 life.")\n{1}{G}, Sacrifice another nonland permanent: Gluttonous Troll gets +2/+2 until end of turn. diff --git a/forge-gui/res/cardsfolder/g/golden_egg.txt b/forge-gui/res/cardsfolder/g/golden_egg.txt index da8a981a901..bab8545d360 100644 --- a/forge-gui/res/cardsfolder/g/golden_egg.txt +++ b/forge-gui/res/cardsfolder/g/golden_egg.txt @@ -5,4 +5,5 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:FreeCard:DB$ Draw | Defined$ You | NumCards$ 1 A:AB$ Mana | Cost$ 1 T Sac<1/CARDNAME> | Produced$ Any | SpellDescription$ Add one mana of any color. A:AB$ GainLife | Cost$ 2 T Sac<1/CARDNAME> | Defined$ You | LifeAmount$ 3 | SpellDescription$ You gain 3 life. +DeckHas:Ability$LifeGain Oracle:When Golden Egg enters the battlefield, draw a card.\n{1}, {T}, Sacrifice Golden Egg: Add one mana of any color.\n{2}, {T}, Sacrifice Golden Egg: You gain 3 life. diff --git a/forge-gui/res/cardsfolder/g/grumgully_the_generous.txt b/forge-gui/res/cardsfolder/g/grumgully_the_generous.txt index ab653e8e3c8..eb9a14ce290 100644 --- a/forge-gui/res/cardsfolder/g/grumgully_the_generous.txt +++ b/forge-gui/res/cardsfolder/g/grumgully_the_generous.txt @@ -4,4 +4,5 @@ Types:Legendary Creature Goblin Shaman PT:3/3 K:ETBReplacement:Other:AddExtraCounter:Mandatory:Battlefield:Creature.YouCtrl+Other+nonHuman SVar:AddExtraCounter:DB$ PutCounter | ETB$ True | Defined$ ReplacedCard | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Each other non-Human creature you controls enters the battlefield with an additional +1/+1 counter on it. +DeckHas:Ability$Counters Oracle:Each other non-Human creature you controls enters the battlefield with an additional +1/+1 counter on it. diff --git a/forge-gui/res/cardsfolder/h/happily_ever_after.txt b/forge-gui/res/cardsfolder/h/happily_ever_after.txt index d1c2e4c854f..30b5e69da1b 100644 --- a/forge-gui/res/cardsfolder/h/happily_ever_after.txt +++ b/forge-gui/res/cardsfolder/h/happily_ever_after.txt @@ -10,4 +10,5 @@ SVar:X:Count$ColorsCtrl Permanent.YouCtrl+inZoneBattlefield/LimitMax.5 SVar:Y:Count$CardControllerTypes.Battlefield,Graveyard/LimitMax.6 SVar:Z:SVar$X/Plus.Y SVar:W:Count$YourStartingLife +DeckHas:Ability$LifeGain Oracle:When Happily Ever After enters the battlefield, each player gains 5 life and draws a card.\nAt the beginning of your upkeep, if there are five colors among permanents you control, there are six or more card types among permanents you control and/or cards in your graveyard, and your life total is greater than or equal to your starting life total, you win the game. diff --git a/forge-gui/res/cardsfolder/h/harmonious_archon.txt b/forge-gui/res/cardsfolder/h/harmonious_archon.txt index 5e9236154e4..d412fef92f3 100644 --- a/forge-gui/res/cardsfolder/h/harmonious_archon.txt +++ b/forge-gui/res/cardsfolder/h/harmonious_archon.txt @@ -7,4 +7,5 @@ S:Mode$ Continuous | Affected$ Creature.nonArchon | SetPower$ 3 | SetToughness$ AI:RemoveDeck:Random T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters the battlefield, create two 1/1 white Human creature tokens. SVar:TrigToken:DB$Token | TokenAmount$ 2 | TokenScript$ w_1_1_human | TokenOwner$ You | LegacyImage$ w 1 1 human eld +DeckHas:Ability$Token Oracle:Flying\nNon-Archon creatures have base power and toughness 3/3.\nWhen Harmonious Archon enters the battlefield, create two 1/1 white Human creature tokens. diff --git a/forge-gui/res/cardsfolder/h/henge_walker.txt b/forge-gui/res/cardsfolder/h/henge_walker.txt index e85b1bdfef4..ba622b6fa68 100644 --- a/forge-gui/res/cardsfolder/h/henge_walker.txt +++ b/forge-gui/res/cardsfolder/h/henge_walker.txt @@ -3,4 +3,5 @@ ManaCost:3 Types:Artifact Creature Golem PT:2/2 K:etbCounter:P1P1:1:Adamant$ Any:Adamant — If at least three mana of the same color was spent to cast this spell, CARDNAME enters the battlefield with a +1/+1 counter on it. +DeckHas:Ability$Counters Oracle:Adamant — If at least three mana of the same color was spent to cast this spell, Henge Walker enters the battlefield with a +1/+1 counter on it. diff --git a/forge-gui/res/cardsfolder/i/idyllic_grange.txt b/forge-gui/res/cardsfolder/i/idyllic_grange.txt index 41d7e14ea13..6689243dcfb 100644 --- a/forge-gui/res/cardsfolder/i/idyllic_grange.txt +++ b/forge-gui/res/cardsfolder/i/idyllic_grange.txt @@ -6,4 +6,5 @@ SVar:LandTapped:DB$ Tap | Defined$ Self | ETB$ True | ConditionPresent$ Plains.Y SVar:MoveToPlay:DB$ ChangeZone | Defined$ Self | Origin$ All | Destination$ Battlefield T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self+untapped | Execute$ TrigPutCounter | TriggerDescription$ When CARDNAME enters the battlefield untapped, put a +1/+1 counter on target creature you control. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 | CounterNum$ 1 +DeckHas:Ability$Counters Oracle:({T}: Add {W}.)\nIdyllic Grange enters the battlefield tapped unless you control three or more other Plains.\nWhen Idyllic Grange enters the battlefield untapped, put a +1/+1 counter on target creature you control. diff --git a/forge-gui/res/cardsfolder/i/improbable_alliance.txt b/forge-gui/res/cardsfolder/i/improbable_alliance.txt index d202d4c64dc..2aa36296a1a 100644 --- a/forge-gui/res/cardsfolder/i/improbable_alliance.txt +++ b/forge-gui/res/cardsfolder/i/improbable_alliance.txt @@ -5,5 +5,6 @@ T:Mode$ Drawn | ValidCard$ Card.YouCtrl | Number$ 2 | TriggerZones$ Battlefield SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ u_1_1_faerie_flying | TokenOwner$ You | LegacyImage$ u 1 1 faerie flying eld A:AB$ Draw | Cost$ 4 U R | NumCards$ 1 | SpellDescription$ Draw a card, then discard a card. | SubAbility$ DBDiscard SVar:DBDiscard:DB$ Discard | Defined$ You | NumCards$ 1 | Mode$ TgtChoose +DeckHas:Ability$Token AI:RemoveDeck:All Oracle:Whenever you draw your second card each turn, create a 1/1 blue Faerie creature token with flying.\n{4}{U}{R}: Draw a card, then discard a card. diff --git a/forge-gui/res/cardsfolder/i/inquisitive_puppet.txt b/forge-gui/res/cardsfolder/i/inquisitive_puppet.txt index ac4b52b6a72..361bd748bce 100644 --- a/forge-gui/res/cardsfolder/i/inquisitive_puppet.txt +++ b/forge-gui/res/cardsfolder/i/inquisitive_puppet.txt @@ -6,4 +6,5 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.S SVar:TrigScry:DB$ Scry | ScryNum$ 1 A:AB$ Token | Cost$ Exile<1/CARDNAME> | TokenAmount$ 1 | TokenScript$ w_1_1_human | TokenOwner$ You | LegacyImage$ w 1 1 human eld | SpellDescription$ Create a 1/1 white Human creature token. DeckHints:Type$Human +DeckHas:Ability$Token Oracle:When Inquisitive Puppet enters the battlefield, scry 1.\nExile Inquisitive Puppet: Create a 1/1 white Human creature token. diff --git a/forge-gui/res/cardsfolder/j/joust.txt b/forge-gui/res/cardsfolder/j/joust.txt index 8e5c1eb55b2..9d4c5ba84f4 100644 --- a/forge-gui/res/cardsfolder/j/joust.txt +++ b/forge-gui/res/cardsfolder/j/joust.txt @@ -3,4 +3,5 @@ ManaCost:1 R Types:Sorcery A:SP$ Pump | Cost$ 1 R | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | NumAtt$ +2 | NumDef$ +1 | ConditionDefined$ ThisTargetedCard | ConditionPresent$ Knight | SubAbility$ DBFight | SpellDescription$ Choose target creature you control and target creature you don't control. The creature you control gets +2/+1 until end of turn if it's a Knight. Then those creatures fight each other. (Each deals damage equal to its power to the other.) SVar:DBFight:DB$ Fight | Defined$ ParentTarget | ValidTgts$ Creature.YouDontCtrl | AILogic$ Always | TgtPrompt$ Choose target creature you don't control +DeckHints:Type$Knight Oracle:Choose target creature you control and target creature you don't control. The creature you control gets +2/+1 until end of turn if it's a Knight. Then those creatures fight each other. (Each deals damage equal to its power to the other.) diff --git a/forge-gui/res/cardsfolder/k/kenrith_the_returned_king.txt b/forge-gui/res/cardsfolder/k/kenrith_the_returned_king.txt index f794375c195..558bf60f15e 100644 --- a/forge-gui/res/cardsfolder/k/kenrith_the_returned_king.txt +++ b/forge-gui/res/cardsfolder/k/kenrith_the_returned_king.txt @@ -7,4 +7,5 @@ A:AB$ PutCounter | Cost$ 1 G | ValidTgts$ Creature | TgtPrompt$ Select target cr A:AB$ GainLife | Cost$ 2 W | LifeAmount$ 5 | ValidTgts$ Player | TgtPrompt$ Choose a player | SpellDescription$ Target player gains 5 life. A:AB$ Draw | Cost$ 3 U | NumCards$ 1 | ValidTgts$ Player | TgtPrompt$ Choose a player | SpellDescription$ Target player draws a card. A:AB$ ChangeZone | Cost$ 4 B | Origin$ Graveyard | Destination$ Battlefield | ValidTgts$ Creature | ChangeNum$ 1 | SpellDescription$ Put target creature card from a graveyard onto the battlefield under its owner's control. +DeckHas:Ability$Counters & Ability$LifeGain Oracle:{R}: All creatures gain trample and haste until end of turn.\n{1}{G}: Put a +1/+1 counter on target creature.\n{2}{W}: Target player gains 5 life.\n{3}{U}: Target player draws a card.\n{4}{B}: Put target creature card from a graveyard onto the battlefield under its owner's control. diff --git a/forge-gui/res/cardsfolder/k/korvold_fae_cursed_king.txt b/forge-gui/res/cardsfolder/k/korvold_fae_cursed_king.txt index cf1098c79c2..68f07fd16ff 100644 --- a/forge-gui/res/cardsfolder/k/korvold_fae_cursed_king.txt +++ b/forge-gui/res/cardsfolder/k/korvold_fae_cursed_king.txt @@ -12,4 +12,5 @@ SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | Counter SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ 1 AI:RemoveDeck:Random SVar:BuffedBy:Permanent.YouCtrl +DeckHas:Ability$Counters Oracle:Flying\nWhenever Korvold, Fae-Cursed King enters the battlefield or attacks, sacrifice another permanent.\nWhenever you sacrifice a permanent, put a +1/+1 counter on Korvold and draw a card. diff --git a/forge-gui/res/cardsfolder/l/locthwain_paladin.txt b/forge-gui/res/cardsfolder/l/locthwain_paladin.txt index e9e5f59d791..afb980e762e 100644 --- a/forge-gui/res/cardsfolder/l/locthwain_paladin.txt +++ b/forge-gui/res/cardsfolder/l/locthwain_paladin.txt @@ -4,4 +4,5 @@ Types:Creature Human Knight PT:3/2 K:Menace K:etbCounter:P1P1:1:Adamant$ Black:Adamant — If at least three black mana was spent to cast this spell, CARDNAME enters the battlefield with a +1/+1 counter on it. +DeckHas:Ability$Counters Oracle:Menace (This creature can't be blocked except by two or more creatures.)\nAdamant — If at least three black mana was spent to cast this spell, Locthwain Paladin enters the battlefield with a +1/+1 counter on it. diff --git a/forge-gui/res/cardsfolder/l/lovestruck_beast_hearts_desire.txt b/forge-gui/res/cardsfolder/l/lovestruck_beast_hearts_desire.txt index 3432d8cf184..3f15684fc60 100644 --- a/forge-gui/res/cardsfolder/l/lovestruck_beast_hearts_desire.txt +++ b/forge-gui/res/cardsfolder/l/lovestruck_beast_hearts_desire.txt @@ -12,4 +12,5 @@ Name:Heart's Desire ManaCost:G Types:Sorcery Adventure A:SP$ Token | Cost$ G | TokenAmount$ 1 | TokenOwner$ You | TokenScript$ w_1_1_human | LegacyImage$ w 1 1 human eld | SpellDescription$ Create a 1/1 white Human creature token. (Then exile this card. You may cast the creature later from exile.) +DeckHas:Ability$Token Oracle:Create a 1/1 white Human creature token. (Then exile this card. You may cast the creature later from exile.) diff --git a/forge-gui/res/cardsfolder/m/mace_of_the_valiant.txt b/forge-gui/res/cardsfolder/m/mace_of_the_valiant.txt index 74a5c24fddb..8f6c47b9a55 100644 --- a/forge-gui/res/cardsfolder/m/mace_of_the_valiant.txt +++ b/forge-gui/res/cardsfolder/m/mace_of_the_valiant.txt @@ -9,4 +9,5 @@ T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creatu SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ CHARGE | CounterNum$ 1 SVar:BuffedBy:Creature K:Equip:3 +DeckHas:Ability$Counters Oracle:Equipped creature gets +1/+1 for each charge counter on Mace of the Valiant and has vigilance.\nWhenever a creature enters the battlefield under your control, put a charge counter on Mace of the Valiant.\nEquip {3} diff --git a/forge-gui/res/cardsfolder/m/mad_ratter.txt b/forge-gui/res/cardsfolder/m/mad_ratter.txt index dc66876f36f..9d2cd8655b6 100644 --- a/forge-gui/res/cardsfolder/m/mad_ratter.txt +++ b/forge-gui/res/cardsfolder/m/mad_ratter.txt @@ -5,4 +5,5 @@ PT:1/2 T:Mode$ Drawn | ValidCard$ Card.YouCtrl | Number$ 2 | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Whenever you draw your second card each turn, create two 1/1 black Rat creature tokens. SVar:TrigToken:DB$ Token | TokenAmount$ 2 | TokenScript$ b_1_1_rat | TokenOwner$ You | LegacyImage$ b 1 1 rat eld SVar:PlayMain1:TRUE +DeckHas:Ability$Token Oracle:Whenever you draw your second card each turn, create two 1/1 black Rat creature tokens. diff --git a/forge-gui/res/cardsfolder/m/malevolent_noble.txt b/forge-gui/res/cardsfolder/m/malevolent_noble.txt index da201c52c09..012f8ec33bc 100644 --- a/forge-gui/res/cardsfolder/m/malevolent_noble.txt +++ b/forge-gui/res/cardsfolder/m/malevolent_noble.txt @@ -3,5 +3,6 @@ ManaCost:1 B Types:Creature Human Noble PT:2/2 A:AB$ PutCounter | Cost$ 2 Sac<1/Artifact;Creature.Other/artifact or another creature> | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Put a +1/+1 counter on CARDNAME. +SVar:AIPreference:SacCost$Artifact.Token,Creature.Other+cmcLE2,Artifact.cmcEQ1 DeckHas:Ability$Counters Oracle:{2}, Sacrifice an artifact or another creature: Put a +1/+1 counter on Malevolent Noble. diff --git a/forge-gui/res/cardsfolder/m/maraleaf_rider.txt b/forge-gui/res/cardsfolder/m/maraleaf_rider.txt index 454e09e3a2a..17788085aa0 100644 --- a/forge-gui/res/cardsfolder/m/maraleaf_rider.txt +++ b/forge-gui/res/cardsfolder/m/maraleaf_rider.txt @@ -3,5 +3,6 @@ ManaCost:1 G Types:Creature Elf Knight PT:3/1 A:AB$ MustBlock | Cost$ Sac<1/Food> | ValidTgts$ Creature | TgtPrompt$ Select target creature | SpellDescription$ Target creature blocks CARDNAME this turn if able. +SVar:AIPreference:SacCost$Card.namedFood AI:RemoveDeck:All Oracle:Sacrifice a Food: Target creature blocks Maraleaf Rider this turn if able. diff --git a/forge-gui/res/cardsfolder/m/midnight_clock.txt b/forge-gui/res/cardsfolder/m/midnight_clock.txt index b033a59b184..e0aaffa54c1 100644 --- a/forge-gui/res/cardsfolder/m/midnight_clock.txt +++ b/forge-gui/res/cardsfolder/m/midnight_clock.txt @@ -10,4 +10,5 @@ T:Mode$ CounterAdded | ValidCard$ Card.Self | TriggerZones$ Battlefield | Counte SVar:TrigChangeAll:DB$ ChangeZoneAll | Origin$ Graveyard,Hand | Destination$ Library | ChangeType$ Card.YouOwn | Shuffle$ True | SubAbility$ DBDraw SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ 7 | SubAbility$ DBExile SVar:DBExile:DB$ ChangeZone | Origin$ Battlefield | Destination$ Exile +DeckHas:Ability$Counters Oracle:{T}: Add {U}.\n{2}{U}: Put an hour counter on Midnight Clock.\nAt the beginning of each upkeep, put an hour counter on Midnight Clock.\nWhen the twelfth hour counter is put on Midnight Clock, shuffle your hand and graveyard into your library, then draw seven cards. Exile Midnight Clock. diff --git a/forge-gui/res/cardsfolder/m/mysterious_pathlighter.txt b/forge-gui/res/cardsfolder/m/mysterious_pathlighter.txt index 251f8db2232..353bbee07a2 100644 --- a/forge-gui/res/cardsfolder/m/mysterious_pathlighter.txt +++ b/forge-gui/res/cardsfolder/m/mysterious_pathlighter.txt @@ -5,4 +5,5 @@ PT:2/2 K:Flying K:ETBReplacement:Other:AddExtraCounter:Mandatory:Battlefield:Creature.YouCtrl+AdventureCard SVar:AddExtraCounter:DB$ PutCounter | ETB$ True | Defined$ ReplacedCard | CounterType$ P1P1 | CounterNum$ 1 | SpellDescription$ Each creature you control that has an Adventure enters the battlefield with an additional +1/+1 counter on it. +DeckHas:Ability$Counters Oracle:Flying\nEach creature you control that has an Adventure enters the battlefield with an additional +1/+1 counter on it. diff --git a/forge-gui/res/cardsfolder/o/oakhame_ranger_bring_back.txt b/forge-gui/res/cardsfolder/o/oakhame_ranger_bring_back.txt index c14811c08cb..2eaaa83e444 100644 --- a/forge-gui/res/cardsfolder/o/oakhame_ranger_bring_back.txt +++ b/forge-gui/res/cardsfolder/o/oakhame_ranger_bring_back.txt @@ -1,5 +1,5 @@ Name:Oakhame Ranger -ManaCost::G/W G/W G/W G/W +ManaCost:G/W G/W G/W G/W Types:Creature Elf Knight PT:2/2 A:AB$ PumpAll | Cost$ T | ValidCards$ Creature.YouCtrl | NumAtt$ +1 | NumDef$ +1 | SpellDescription$ Creatures you control get +1/+1 until end of turn. @@ -9,7 +9,8 @@ AlternateMode:Adventure ALTERNATE Name:Bring Back -ManaCost::G/W G/W G/W G/W +ManaCost:G/W G/W G/W G/W Types:Sorcery Adventure A:SP$ Token | Cost$ G/W G/W G/W G/W | TokenAmount$ 2 | TokenScript$ w_1_1_human | TokenOwner$ You | LegacyImage$ w 1 1 human eld | SpellDescription$ Create two 1/1 white Human creature tokens. +DeckHas:Ability$Token Oracle:Create two 1/1 white Human creature tokens. diff --git a/forge-gui/res/cardsfolder/o/oathsworn_knight.txt b/forge-gui/res/cardsfolder/o/oathsworn_knight.txt index f70df8e358b..f526385b4da 100644 --- a/forge-gui/res/cardsfolder/o/oathsworn_knight.txt +++ b/forge-gui/res/cardsfolder/o/oathsworn_knight.txt @@ -6,4 +6,5 @@ K:etbCounter:P1P1:4 K:CARDNAME attacks each combat if able. R:Event$ DamageDone | ActiveZones$ Battlefield | ValidTarget$ Card.Self+counters_GE1_P1P1 | ReplaceWith$ DBRemoveCounters | PreventionEffect$ True | Description$ If damage would be dealt to CARDNAME while it has a +1/+1 counter on it, prevent that damage and remove a +1/+1 counter from it. SVar:DBRemoveCounters:DB$ RemoveCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ 1 +DeckHas:Ability$Counters Oracle:Oathsworn Knight enters the battlefield with four +1/+1 counters on it.\nOathsworn Knight attacks each combat if able.\nIf damage would be dealt to Oathsworn Knight while it has a +1/+1 counter on it, prevent that damage and remove a +1/+1 counter from it. diff --git a/forge-gui/res/cardsfolder/o/oko_the_trickster.txt b/forge-gui/res/cardsfolder/o/oko_the_trickster.txt index 51268c6ec57..e82906fd537 100644 --- a/forge-gui/res/cardsfolder/o/oko_the_trickster.txt +++ b/forge-gui/res/cardsfolder/o/oko_the_trickster.txt @@ -6,4 +6,5 @@ A:AB$ PutCounter | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | TargetMin$ A:AB$ Clone | Cost$ AddCounter<0/LOYALTY> | ValidTgts$ Creature.YouCtrl | Planeswalker$ True | TgtPrompt$ Select target creature you control | SubAbility$ DBPrevent | StackDescription$ SpellDescription | SpellDescription$ Until end of turn, CARDNAME becomes a copy of target creature you control. Prevent all damage that would be dealt to him this turn. SVar:DBPrevent:DB$ Pump | Defined$ Self | KW$ Prevent all damage that would be dealt to CARDNAME. A:AB$ AnimateAll | Cost$ SubCounter<7/LOYALTY> | Planeswalker$ True | Ultimate$ True | ValidCards$ Creature.YouCtrl | Power$ 10 | Toughness$ 10 | Keywords$ Trample | SpellDescription$ Until end of turn, each creature you control has base power and toughness 10/10 and gains trample. +DeckHas:Ability$Counters Oracle:[+1]: Put two +1/+1 counters on up to one target creature you control.\n[0]: Until end of turn, Oko, the Trickster becomes a copy of target creature you control. Prevent all damage that would be dealt to him this turn.\n[−7]: Until end of turn, each creature you control has base power and toughness 10/10 and gains trample. diff --git a/forge-gui/res/cardsfolder/o/oko_thief_of_crowns.txt b/forge-gui/res/cardsfolder/o/oko_thief_of_crowns.txt index 84dd9bc8ab8..ac2374d400c 100644 --- a/forge-gui/res/cardsfolder/o/oko_thief_of_crowns.txt +++ b/forge-gui/res/cardsfolder/o/oko_thief_of_crowns.txt @@ -6,4 +6,5 @@ A:AB$ Token | Cost$ AddCounter<2/LOYALTY> | Planeswalker$ True | TokenAmount$ 1 A:AB$ Animate | Cost$ AddCounter<1/LOYALTY> | Planeswalker$ True | ValidTgts$ Artifact,Creature | TgtPrompt$ Select target artifact or creature | Power$ 3 | Toughness$ 3 | RemoveAllAbilities$ True | Colors$ Green | OverwriteColors$ True | Types$ Creature,Elk | RemoveCreatureTypes$ True | RemoveCardTypes$ True | Permanent$ True | SpellDescription$ Target artifact or creature loses all abilities and becomes a green Elk creature with base power and toughness 3/3. A:AB$ Pump | Cost$ SubCounter<5/LOYALTY> | Planeswalker$ True | Ultimate$ True | AITgts$ Artifact.YouCtrl+cmcLE1 | ValidTgts$ Artifact.YouCtrl,Creature.YouCtrl | TgtPrompt$ Choose target artifact or creature you control | SubAbility$ OkoExchange | SpellDescription$ Exchange control of target artifact or creature you control and target creature an opponent controls with power 3 or less. SVar:OkoExchange:DB$ ExchangeControl | Defined$ ParentTarget | ValidTgts$ Creature.OppCtrl+powerLE3 | TgtPrompt$ Choose target creature an opponent controls with power 3 or less +DeckHas:Ability$Token Oracle:[+2]: Create a Food Token.\n[+1]: Target artifact or creature loses all abilities and becomes a green Elk creature with base power and toughness 3/3.\n[-5]: Exchange control of target artifact or creature you control and target creature an opponent controls with power 3 or less. diff --git a/forge-gui/res/cardsfolder/o/outlaws_merriment.txt b/forge-gui/res/cardsfolder/o/outlaws_merriment.txt index e7f43f88fc6..738b3fd9f53 100644 --- a/forge-gui/res/cardsfolder/o/outlaws_merriment.txt +++ b/forge-gui/res/cardsfolder/o/outlaws_merriment.txt @@ -6,4 +6,5 @@ SVar:TrigCharm:DB$ Charm | Random$ True | Choices$ DBToken1,DBToken2,DBToken3 SVar:DBToken1:DB$ Token | TokenAmount$ 1 | TokenScript$ rw_3_1_human_warrior_trample_haste | TokenOwner$ You | LegacyImage$ rw 3 1 human warrior trample haste eld | SpellDescription$ 3/1 Human Warrior with trample and haste. SVar:DBToken2:DB$ Token | TokenAmount$ 1 | TokenScript$ rw_2_1_human_cleric_lifelink_haste | TokenOwner$ You | LegacyImage$ rw 2 1 human cleric lifelink haste eld | SpellDescription$ 2/1 Human Cleric with lifelink and haste. SVar:DBToken3:DB$ Token | TokenAmount$ 1 | TokenScript$ rw_1_2_human_rogue_haste_damage | TokenOwner$ You | LegacyImage$ rw 1 2 human rogue haste damage eld | SpellDescription$ 1/2 Human Rogue with haste and "When this creature enters the battlefield, it deals 1 damage to any target." +DeckHas:Ability$Token Oracle:At the beginning of your upkeep, choose one at random. Create a red and white creature token with those characteristics.\n• 3/1 Human Warrior with trample and haste.\n• 2/1 Human Cleric with lifelink and haste.\n• 1/2 Human Rogue with haste and "When this creature enters the battlefield, it deals 1 damage to any target." diff --git a/forge-gui/res/cardsfolder/p/piper_of_the_swarm.txt b/forge-gui/res/cardsfolder/p/piper_of_the_swarm.txt index cf376559189..55303a13e51 100644 --- a/forge-gui/res/cardsfolder/p/piper_of_the_swarm.txt +++ b/forge-gui/res/cardsfolder/p/piper_of_the_swarm.txt @@ -7,5 +7,6 @@ SVar:PlayMain1:TRUE DeckHints:Type$Rat A:AB$ Token | Cost$ 1 B T | TokenAmount$ 1 | TokenScript$ b_1_1_rat | TokenOwner$ You | LegacyImage$ b 1 1 rat eld | SpellDescription$ Create a 1/1 black Rat creature token. A:AB$ GainControl | Cost$ 2 B B T Sac<3/Rat> | ValidTgts$ Creature | TgtPrompt$ Select target creature | SpellDescription$ Gain control of target creature. -AI:RemoveDeck:All +SVar:AIPreference:SacCost$Creature.Rat+token,Creature.Rat+cmcLE3 +DeckHas:Ability$Token Oracle:Rats you control have menace.\n{1}{B}, {T}: Create a 1/1 black Rat creature token.\n{2}{B}{B}, {T}, Sacrifice three Rats: Gain control of target creature. diff --git a/forge-gui/res/cardsfolder/r/rally_for_the_throne.txt b/forge-gui/res/cardsfolder/r/rally_for_the_throne.txt index 38416eb5e4d..ef8df94ada4 100644 --- a/forge-gui/res/cardsfolder/r/rally_for_the_throne.txt +++ b/forge-gui/res/cardsfolder/r/rally_for_the_throne.txt @@ -5,4 +5,5 @@ A:SP$ Token | Cost$ 2 W | TokenAmount$ 2 | TokenScript$ w_1_1_human | TokenOwner SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ Y | ConditionCheckSVar$ X | References$ X,Y SVar:X:Count$Adamant.White.1.0 SVar:Y:Count$Valid Creature.YouCtrl +DeckHas:Ability$Token & Ability$LifeGain Oracle:Create two 1/1 white Human creature tokens.\nAdamant — If at least three white mana was spent to cast this spell, you gain 1 life for each creature you control. diff --git a/forge-gui/res/cardsfolder/r/resolute_rider.txt b/forge-gui/res/cardsfolder/r/resolute_rider.txt index 851db597484..0ceaa245b83 100644 --- a/forge-gui/res/cardsfolder/r/resolute_rider.txt +++ b/forge-gui/res/cardsfolder/r/resolute_rider.txt @@ -4,4 +4,5 @@ Types:Creature Human Knight PT:4/2 A:AB$ Pump | Cost$ W/B W/B | KW$ Lifelink | Defined$ Self | SpellDescription$ CARDNAME gains lifelink until end of turn. A:AB$ Pump | Cost$ W/B W/B W/B W/B | KW$ Indestructible | Defined$ Self | SpellDescription$ CARDNAME gains indestructible until end of turn. +DeckHas:Ability$LifeGain Oracle:{W/B}{W/B}: Resolute Rider gains lifelink until end of turn.\n{W/B}{W/B}{W/B}{W/B}: Resolute Rider gains indestructible until end of turn. diff --git a/forge-gui/res/cardsfolder/s/savvy_hunter.txt b/forge-gui/res/cardsfolder/s/savvy_hunter.txt index e165dc5b962..2ef224fb8e0 100644 --- a/forge-gui/res/cardsfolder/s/savvy_hunter.txt +++ b/forge-gui/res/cardsfolder/s/savvy_hunter.txt @@ -7,4 +7,5 @@ T:Mode$ Blocks | ValidCard$ Card.Self | Execute$ TrigToken | TriggerZones$ Battl SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld SVar:HasAttackEffect:TRUE A:AB$ Draw | Cost$ Sac<2/Food> | NumCards$ 1 | SpellDescription$ Draw a card. +DeckHas:Ability$Token & Ability$LifeGain Oracle:Whenever Savvy Hunter attacks or blocks, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.")\nSacrifice two Foods: Draw a card. diff --git a/forge-gui/res/cardsfolder/s/shining_armor.txt b/forge-gui/res/cardsfolder/s/shining_armor.txt index 68e38c4abe4..e9c1c8081ae 100644 --- a/forge-gui/res/cardsfolder/s/shining_armor.txt +++ b/forge-gui/res/cardsfolder/s/shining_armor.txt @@ -8,4 +8,4 @@ S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddToughness$ 2 | AddKeywor K:Equip:3 SVar:BuffedBy:Knight DeckHints:Type$Knight -Oracle:Flash\nWhen Shining Armor enters the battlefield, attach it to target Knight you control.\nEquipped creature gets +0/+2 and has vigilance.\Equip {3} ({3}: Attach to target creature you control. Equip only as a sorcery.) +Oracle:Flash\nWhen Shining Armor enters the battlefield, attach it to target Knight you control.\nEquipped creature gets +0/+2 and has vigilance.\nEquip {3} ({3}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/s/silverflame_ritual.txt b/forge-gui/res/cardsfolder/s/silverflame_ritual.txt index 7692b568a9b..cf112031338 100644 --- a/forge-gui/res/cardsfolder/s/silverflame_ritual.txt +++ b/forge-gui/res/cardsfolder/s/silverflame_ritual.txt @@ -4,4 +4,5 @@ Types:Sorcery A:SP$ PutCounterAll | Cost$ 3 W | ValidCards$ Creature.YouCtrl | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBPumpAll | SpellDescription$ Put a +1/+1 counter on each creature you control. Adamant — If at least three white mana was spent to cast this spell, creatures you control gain vigilance until end of turn. SVar:DBPumpAll:DB$ PumpAll | ValidCards$ Creature.YouCtrl | KW$ Vigilance | ConditionCheckSVar$ X | References$ X SVar:X:Count$Adamant.White.1.0 +DeckHas:Ability$Counters Oracle:Put a +1/+1 counter on each creature you control.\nAdamant — If at least three white mana was spent to cast this spell, creatures you control gain vigilance until end of turn. diff --git a/forge-gui/res/cardsfolder/s/silverwing_squadron.txt b/forge-gui/res/cardsfolder/s/silverwing_squadron.txt index ec7e1b888ad..feb6ab16bdd 100644 --- a/forge-gui/res/cardsfolder/s/silverwing_squadron.txt +++ b/forge-gui/res/cardsfolder/s/silverwing_squadron.txt @@ -11,4 +11,5 @@ SVar:NoZeroToughnessAI:True T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ Whenever CARDNAME attacks, create a number of 2/2 white Knight creature tokens with vigilance equal to the number of opponents you have. SVar:TrigToken:DB$ Token | TokenOwner$ You | TokenAmount$ Y | TokenScript$ w_2_2_knight_vigilance | LegacyImage$ w 2 2 knight vigilance eld | References$ Y SVar:Y:PlayerCountOpponents$Amount +DeckHas:Ability$Token Oracle:Flying, vigilance\nSilverwing Squadron's power and toughness are each equal to the number of creatures you control.\nWhenever Silverwing Squadron attacks, create a number of 2/2 white Knight creature tokens with vigilance equal to the number of opponents you have. diff --git a/forge-gui/res/cardsfolder/s/smitten_swordmaster_curry_favor.txt b/forge-gui/res/cardsfolder/s/smitten_swordmaster_curry_favor.txt index c9f5b2d4551..cce96927346 100644 --- a/forge-gui/res/cardsfolder/s/smitten_swordmaster_curry_favor.txt +++ b/forge-gui/res/cardsfolder/s/smitten_swordmaster_curry_favor.txt @@ -14,4 +14,5 @@ Types:Sorcery Adventure A:SP$ GainLife | Cost$ B | Defined$ You | LifeAmount$ X | References$ X | SubAbility$ DBLoseLife | SpellDescription$ You gain X life and each opponent loses X life, where X is the number of Knights you control. SVar:DBLoseLife:DB$ LoseLife | Defined$ Player.Opponent | LifeAmount$ X | References$ X SVar:X:Count$Valid Knight.YouCtrl +DeckHas:Ability$LifeGain Oracle:You gain X life and each opponent loses X life, where X is the number of Knights you control. diff --git a/forge-gui/res/cardsfolder/s/sorcerers_broom.txt b/forge-gui/res/cardsfolder/s/sorcerers_broom.txt index 94a6a2c8eea..072cab5be35 100644 --- a/forge-gui/res/cardsfolder/s/sorcerers_broom.txt +++ b/forge-gui/res/cardsfolder/s/sorcerers_broom.txt @@ -5,4 +5,5 @@ PT:2/1 T:Mode$ Sacrificed | ValidCard$ Permanent.Other | Execute$ TrigCopy | TriggerZones$ Battlefield | ValidPlayer$ You | TriggerDescription$ Whenever you sacrifice another permanent, you may pay {3}. If you do, create a token that's a copy of CARDNAME. SVar:TrigCopy:AB$ CopyPermanent | Cost$ 3 | Defined$ Self | NumCopies$ 1 AI:RemoveDeck:All +DeckHas:Ability$Token Oracle:Whenever you sacrifice another permanent, you may pay {3}. If you do, create a token that's a copy of Sorcerer's Broom. diff --git a/forge-gui/res/cardsfolder/s/steelbane_hydra.txt b/forge-gui/res/cardsfolder/s/steelbane_hydra.txt index 600dcc1b8fb..89812c87bc4 100644 --- a/forge-gui/res/cardsfolder/s/steelbane_hydra.txt +++ b/forge-gui/res/cardsfolder/s/steelbane_hydra.txt @@ -5,4 +5,5 @@ PT:0/0 K:etbCounter:P1P1:X SVar:X:Count$xPaid A:AB$ Destroy | Cost$ 2 G SubCounter<1/P1P1> | ValidTgts$ Artifact,Enchantment | TgtPrompt$ Select target artifact or enchantment | SpellDescription$ Destroy target artifact or enchantment. +DeckHas:Ability$Token Oracle:Steelbane Hydra enters the battlefield with X +1/+1 counters on it.\n{2}{G}, Remove a +1/+1 counter from Steelbane Hydra: Destroy target artifact or enchantment. diff --git a/forge-gui/res/cardsfolder/s/steelclaw_lance.txt b/forge-gui/res/cardsfolder/s/steelclaw_lance.txt index 0247261b16f..969ed640dfb 100644 --- a/forge-gui/res/cardsfolder/s/steelclaw_lance.txt +++ b/forge-gui/res/cardsfolder/s/steelclaw_lance.txt @@ -4,4 +4,5 @@ Types:Artifact Equipment S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 2 | AddToughness$ 2 | Description$ Equipped creature gets +2/+2. K:Equip:1:Creature.Knight+YouCtrl:Knight K:Equip:3 +DeckHints:Type$Knight Oracle:Equipped creature gets +2/+2.\nEquip Knight {1} ({1}: Attach to target Knight creature you control. Equip only as a sorcery.)\nEquip {3} ({3}: Attach to target creature you control. Equip only as a sorcery.) diff --git a/forge-gui/res/cardsfolder/s/stolen_by_the_fae.txt b/forge-gui/res/cardsfolder/s/stolen_by_the_fae.txt index 6348f8665cd..67eb1217525 100644 --- a/forge-gui/res/cardsfolder/s/stolen_by_the_fae.txt +++ b/forge-gui/res/cardsfolder/s/stolen_by_the_fae.txt @@ -4,5 +4,5 @@ Types:Sorcery A:SP$ ChangeZone | Cost$ X U U | Origin$ Battlefield | Destination$ Hand | ValidTgts$ Creature | ChangeNum$ 1 | References$ X | SubAbility$ DBToken | SpellDescription$ Return target creature with converted mana cost X to its owner's hand. You create X 1/1 blue Faerie creature tokens with flying. SVar:DBToken:DB$ Token | TokenAmount$ X | References$ X | TokenScript$ u_1_1_faerie_flying | TokenOwner$ You | LegacyImage$ u 1 1 faerie flying eld SVar:X:Targeted$CardManaCost -AI:RemoveDeck:All +DeckHas:Ability$Token Oracle:Return target creature with converted mana cost X to its owner's hand. You create X 1/1 blue Faerie creature tokens with flying. diff --git a/forge-gui/res/cardsfolder/s/stonecoil_serpent.txt b/forge-gui/res/cardsfolder/s/stonecoil_serpent.txt index dd379d1423c..30f3efa6ea5 100644 --- a/forge-gui/res/cardsfolder/s/stonecoil_serpent.txt +++ b/forge-gui/res/cardsfolder/s/stonecoil_serpent.txt @@ -7,4 +7,5 @@ K:Trample K:Protection from multicolored K:etbCounter:P1P1:X SVar:X:Count$xPaid +DeckHas:Ability$Counters Oracle:Reach, trample, protection from multicolored\nStonecoil Serpent enters the battlefield with X +1/+1 counters on it. diff --git a/forge-gui/res/cardsfolder/s/syr_carah_the_bold.txt b/forge-gui/res/cardsfolder/s/syr_carah_the_bold.txt index 618d514acc1..9b61fdaf6e2 100644 --- a/forge-gui/res/cardsfolder/s/syr_carah_the_bold.txt +++ b/forge-gui/res/cardsfolder/s/syr_carah_the_bold.txt @@ -9,4 +9,5 @@ SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True SVar:STPlay:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may play the exiled card. A:AB$ DealDamage | Cost$ T | ValidTgts$ Creature,Player,Planeswalker | TgtPrompt$ Select any target | NumDmg$ 1 | SpellDescription$ CARDNAME deals 1 damage to any target. SVar:NonCombatPriority:1 +DeckHints:Type$Instant|Sorcery Oracle:When Syr Carah, the Bold or an instant or sorcery spell you control deals damage to a player, exile the top card of your library. You may play that card this turn.\n{T}: Syr Carah deals 1 damage to any target. diff --git a/forge-gui/res/cardsfolder/s/syr_gwyn_hero_of_ashvale.txt b/forge-gui/res/cardsfolder/s/syr_gwyn_hero_of_ashvale.txt index 2aca904bcd0..7941f08c307 100644 --- a/forge-gui/res/cardsfolder/s/syr_gwyn_hero_of_ashvale.txt +++ b/forge-gui/res/cardsfolder/s/syr_gwyn_hero_of_ashvale.txt @@ -8,4 +8,5 @@ T:Mode$ Attacks | ValidCard$ Creature.YouCtrl+equipped | TriggerZones$ Battlefie SVar:TrigDraw:DB$ Draw | NumCards$ 1 | SubAbility$ DBLoseLife SVar:DBLoseLife:DB$ LoseLife | LifeAmount$ 1 S:Mode$ Continuous | Affected$ Equipment.YouCtrl | AddKeyword$ Equip:0:Creature.YouCtrl+Knight:Knight | Description$ Equipment you control have equip Knight {0}. +DeckHints:Type$Knight Oracle:Vigilance, menace\nWhenever an equipped creature you control attacks, you draw a card and you lose 1 life.\nEquipment you control have equip Knight {0}. diff --git a/forge-gui/res/cardsfolder/t/taste_of_death.txt b/forge-gui/res/cardsfolder/t/taste_of_death.txt index f3e9b865f9c..5eff0a890b0 100644 --- a/forge-gui/res/cardsfolder/t/taste_of_death.txt +++ b/forge-gui/res/cardsfolder/t/taste_of_death.txt @@ -3,5 +3,5 @@ ManaCost:4 B B Types:Sorcery A:SP$ Sacrifice | Cost$ 4 B B | Amount$ 3 | Defined$ Player | SacValid$ Creature | SpellDescription$ Each player sacrifices three creatures. You create three Food tokens. | SubAbility$ DBToken SVar:DBToken:DB$ Token | TokenAmount$ 3 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld -DeckHas:Ability$LifeGain +DeckHas:Ability$LifeGain & Ability$Token Oracle:Each player sacrifices three creatures. You create three Food tokens. diff --git a/forge-gui/res/cardsfolder/t/tempting_witch.txt b/forge-gui/res/cardsfolder/t/tempting_witch.txt index 34ba26dbdb6..4d752cdd60b 100644 --- a/forge-gui/res/cardsfolder/t/tempting_witch.txt +++ b/forge-gui/res/cardsfolder/t/tempting_witch.txt @@ -4,6 +4,6 @@ Types:Creature Human Warlock PT:1/3 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigToken | TriggerDescription$ When CARDNAME enters the battlefield, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld -DeckHas:Ability$LifeGain +DeckHas:Ability$LifeGain & Ability$Token A:AB$ LoseLife | Cost$ 2 T Sac<1/Food> | ValidTgts$ Player | TgtPrompt$ Select a player | LifeAmount$ 3 | SpellDescription$ Target player loses 3 life. Oracle:When Tempting Witch enters the battlefield, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.")\n{2}, {T}, Sacrifice a Food: Target player loses 3 life. diff --git a/forge-gui/res/cardsfolder/t/the_circle_of_loyalty.txt b/forge-gui/res/cardsfolder/t/the_circle_of_loyalty.txt index 16efcc7b77e..28fbbe997c7 100644 --- a/forge-gui/res/cardsfolder/t/the_circle_of_loyalty.txt +++ b/forge-gui/res/cardsfolder/t/the_circle_of_loyalty.txt @@ -10,5 +10,5 @@ A:AB$ Token | Cost$ 3 W T | TokenAmount$ 1 | TokenScript$ w_2_2_knight_vigilance SVar:PlayMain1:TRUE SVar:BuffedBy:Legendary DeckHas:Ability$Token -DeckHints:Type$Knight +DeckHints:Type$Knight & Type$Legendary Oracle:This spell costs {1} less to cast for each Knight you control.\nCreatures you control get +1/+1.\nWhenever you cast a legendary spell, create a 2/2 white Knight creature token with vigilance.\n{3}{W}, {T}: Create a 2/2 white Knight creature token with vigilance. diff --git a/forge-gui/res/cardsfolder/t/the_great_henge.txt b/forge-gui/res/cardsfolder/t/the_great_henge.txt index 4628b019329..f94ab43cb44 100644 --- a/forge-gui/res/cardsfolder/t/the_great_henge.txt +++ b/forge-gui/res/cardsfolder/t/the_great_henge.txt @@ -8,4 +8,5 @@ SVar:DBGainLife:DB$ GainLife | LifeAmount$ 2 T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Creature.nonToken+YouCtrl | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever a nontoken creature enters the battlefield under your control, put a +1/+1 counter on it and draw a card. SVar:TrigPutCounter:DB$ PutCounter | Defined$ TriggeredCardLKICopy | CounterType$ P1P1 | CounterNum$ 1 | SubAbility$ DBDraw SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ 1 +DeckHas:Ability$LifeGain && Ability$Counters Oracle:This spell costs {X} less to cast, where X is the greatest power among creatures you control.\n{T}: Add {G}{G}. You gain 2 life.\nWhenever a nontoken creature enters the battlefield under your control, put a +1/+1 counter on it and draw a card. diff --git a/forge-gui/res/cardsfolder/t/the_magic_mirror.txt b/forge-gui/res/cardsfolder/t/the_magic_mirror.txt index eee0b0bdd12..85623eaaa67 100644 --- a/forge-gui/res/cardsfolder/t/the_magic_mirror.txt +++ b/forge-gui/res/cardsfolder/t/the_magic_mirror.txt @@ -9,4 +9,5 @@ T:Mode$ Phase | Phase$ Upkeep | ValidPlayer$ You | TriggerZones$ Battlefield | E SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ KNOWLEDGE | CounterNum$ 1 | SubAbility$ DBDraw SVar:DBDraw:DB$ Draw | Defined$ You | NumCards$ Y | References$ Y SVar:Y:Count$CardCounters.KNOWLEDGE +DeckHas:Ability$Counters Oracle:This spell costs {1} less to cast for each instant and sorcery card in your graveyard.\nYou have no maximum hand size.\nAt the beginning of your upkeep, put a knowledge counter on The Magic Mirror, then draw a card for each knowledge counter on The Magic Mirror. diff --git a/forge-gui/res/cardsfolder/t/tome_of_legends.txt b/forge-gui/res/cardsfolder/t/tome_of_legends.txt index c2becfeeed6..79877f20e44 100644 --- a/forge-gui/res/cardsfolder/t/tome_of_legends.txt +++ b/forge-gui/res/cardsfolder/t/tome_of_legends.txt @@ -7,5 +7,6 @@ T:Mode$ Attacks | ValidCard$ Card.IsCommander+YouOwn+YouCtrl | TriggerZones$ Bat SVar:TrigPutCounter:DB$PutCounter | Defined$ Self | CounterType$ PAGE | CounterNum$ 1 SVar:HasAttackEffect:TRUE DeckHints:Type$IsCommander +DeckHas:Ability$Counters A:AB$ Draw | Cost$ 1 T SubCounter<1/PAGE> | NumCards$ 1 | SpellDescription$ Draw a card. Oracle:Tome of Legends enters the battlefield with a page counter on it.\nWhenever your commander enters the battlefield or attacks, put a page counter on Tome of Legends.\n{1}, {T}, Remove a page counter from Tome of Legends: Draw a card. diff --git a/forge-gui/res/cardsfolder/t/tournament_grounds.txt b/forge-gui/res/cardsfolder/t/tournament_grounds.txt index dfaf64e80d0..d0f509ee161 100644 --- a/forge-gui/res/cardsfolder/t/tournament_grounds.txt +++ b/forge-gui/res/cardsfolder/t/tournament_grounds.txt @@ -5,5 +5,6 @@ A:AB$ Mana | Cost$ T | Produced$ C | SpellDescription$ Add {C}. A:AB$ Mana | Cost$ T | Produced$ R | RestrictValid$ Card.Knight,Card.Equipment | SpellDescription$ Add {R}. Spend this mana only to cast a Knight or Equipment spell. A:AB$ Mana | Cost$ T | Produced$ W | RestrictValid$ Card.Knight,Card.Equipment | SpellDescription$ Add {W}. Spend this mana only to cast a Knight or Equipment spell. A:AB$ Mana | Cost$ T | Produced$ B | RestrictValid$ Card.Knight,Card.Equipment | SpellDescription$ Add {B}. Spend this mana only to cast a Knight or Equipment spell. +DeckNeeds:Type$Knight AI:RemoveDeck:Random Oracle:{T}: Add {C}.\n{T}: Add {R}, {W}, or {B}. Spend this mana only to cast a Knight or Equipment spell. diff --git a/forge-gui/res/cardsfolder/t/trail_of_crumbs.txt b/forge-gui/res/cardsfolder/t/trail_of_crumbs.txt index db923432e7f..d603d9282b8 100644 --- a/forge-gui/res/cardsfolder/t/trail_of_crumbs.txt +++ b/forge-gui/res/cardsfolder/t/trail_of_crumbs.txt @@ -5,4 +5,5 @@ T:Mode$ ChangesZone | ValidCard$ Card.Self | Origin$ Any | Destination$ Battlefi SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld T:Mode$ Sacrificed | ValidPlayer$ You | ValidCard$ Food.YouCtrl | Origin$ Any | Destination$ Battlefield | Execute$ TrigDig | TriggerZones$ Battlefield | TriggerDescription$ Whenever you sacrifice a Food, you may pay {1}. If you do, look at the top two cards of your library. You may reveal a permanent card from among them and put it into your hand. Put the rest on the bottom of your library in any order. SVar:TrigDig:AB$ Dig | Cost$ 1 | DigNum$ 2 | ChangeNum$ 1 | Optional$ True | ChangeValid$ Permanent | ForceRevealToController$ True +DeckHas:Ability$Token & Ability$LifeGain Oracle:When Trail of Crumbs enters the battlefield, create a Food token.\nWhenever you sacrifice a Food, you may pay {1}. If you do, look at the top two cards of your library. You may reveal a permanent card from among them and put it into your hand. Put the rest on the bottom of your library in any order. diff --git a/forge-gui/res/cardsfolder/t/tuinvale_treefolk_oaken_boon.txt b/forge-gui/res/cardsfolder/t/tuinvale_treefolk_oaken_boon.txt index c5ed354ec8f..6eb0e3711a7 100644 --- a/forge-gui/res/cardsfolder/t/tuinvale_treefolk_oaken_boon.txt +++ b/forge-gui/res/cardsfolder/t/tuinvale_treefolk_oaken_boon.txt @@ -11,4 +11,5 @@ Name:Oaken Boon ManaCost:3 G Types:Sorcery Adventure A:SP$ PutCounter | Cost$ 3 G | ValidTgts$ Creature | TgtPrompt$ Select target creature | CounterType$ P1P1 | CounterNum$ 2 | SpellDescription$ Put two +1/+1 counters on target creature. +DeckHas:Ability$Counters Oracle:Put two +1/+1 counters on target creature. diff --git a/forge-gui/res/cardsfolder/t/turn_into_a_pumpkin.txt b/forge-gui/res/cardsfolder/t/turn_into_a_pumpkin.txt index c770f363392..9f0da32c18a 100644 --- a/forge-gui/res/cardsfolder/t/turn_into_a_pumpkin.txt +++ b/forge-gui/res/cardsfolder/t/turn_into_a_pumpkin.txt @@ -5,4 +5,5 @@ A:SP$ ChangeZone | Cost$ 3 U | ValidTgts$ Permanent.nonLand | TgtPrompt$ Select SVar:DBDraw:DB$ Draw | NumCards$ 1 | SubAbility$ DBToken SVar:DBToken:DB$ Token | TokenAmount$ X | TokenScript$ c_a_food_sac | TokenOwner$ You | LegacyImage$ c a food sac eld | References$ X SVar:X:Count$Adamant.Blue.1.0 +DeckHas:Ability$LifeGain & Ability$Token Oracle:Return target nonland permanent to its owner's hand. Draw a card.\nAdamant — If at least three blue mana was spent to cast this spell, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") diff --git a/forge-gui/res/cardsfolder/v/vantress_paladin.txt b/forge-gui/res/cardsfolder/v/vantress_paladin.txt index 3b0476c39c0..e0a22bb61dc 100644 --- a/forge-gui/res/cardsfolder/v/vantress_paladin.txt +++ b/forge-gui/res/cardsfolder/v/vantress_paladin.txt @@ -4,4 +4,5 @@ Types:Creature Human Knight PT:2/2 K:Flying K:etbCounter:P1P1:1:Adamant$ Blue:Adamant — If at least three blue mana was spent to cast this spell, CARDNAME enters the battlefield with a +1/+1 counter on it. +DeckHas:Ability$Counters Oracle:Flying\nAdamant — If at least three blue mana was spent to cast this spell, Vantress Paladin enters the battlefield with a +1/+1 counter on it. diff --git a/forge-gui/res/cardsfolder/v/venerable_knight.txt b/forge-gui/res/cardsfolder/v/venerable_knight.txt index 90adcc55028..8a376bf24e6 100644 --- a/forge-gui/res/cardsfolder/v/venerable_knight.txt +++ b/forge-gui/res/cardsfolder/v/venerable_knight.txt @@ -4,5 +4,6 @@ Types:Creature Human Knight PT:2/1 T:Mode$ ChangesZone | Origin$ Battlefield | Destination$ Graveyard | ValidCard$ Card.Self | Execute$ TrigPutCounter | TriggerController$ TriggeredCardController | TriggerDescription$ When CARDNAME dies, put a +1/+1 counter on target Knight you control. SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Knight.YouCtrl | TgtPrompt$ Select target Knight you control | CounterType$ P1P1 | CounterNum$ 1 +DeckHas:Ability$Counters DeckHints:Type$Knight Oracle:When Venerable Knight dies, put a +1/+1 counter on target Knight you control. diff --git a/forge-gui/res/cardsfolder/w/weapon_rack.txt b/forge-gui/res/cardsfolder/w/weapon_rack.txt index 2b6da1154be..42de77f289a 100644 --- a/forge-gui/res/cardsfolder/w/weapon_rack.txt +++ b/forge-gui/res/cardsfolder/w/weapon_rack.txt @@ -3,5 +3,6 @@ ManaCost:4 Types:Artifact K:etbCounter:P1P1:3 A:AB$ MoveCounter | Cost$ T | Source$ Self | ValidTgts$ Creature | TgtPrompt$ Select target creature | CounterType$ P1P1 | CounterNum$ 1 | SorcerySpeed$ True | SpellDescription$ Move a +1/+1 counter from CARDNAME onto target creature. Activate this ability only any time you could cast a sorcery. +DeckHas:Ability$Counters AI:RemoveDeck:All Oracle:Weapon Rack enters the battlefield with three +1/+1 counters on it.\n{T}: Move a +1/+1 counter from Weapon Rack onto target creature. Activate this ability only any time you could cast a sorcery. diff --git a/forge-gui/res/cardsfolder/w/wildborn_preserver.txt b/forge-gui/res/cardsfolder/w/wildborn_preserver.txt index b8ef5ca1567..91032be0fab 100644 --- a/forge-gui/res/cardsfolder/w/wildborn_preserver.txt +++ b/forge-gui/res/cardsfolder/w/wildborn_preserver.txt @@ -9,4 +9,5 @@ SVar:TrigImmediateTrig:AB$ ImmediateTrigger | Cost$ X | Execute$ TrigPutCounter SVar:X:Count$xPaid SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ P1P1 | CounterNum$ Y | References$ Y SVar:Y:Count$TriggerRememberAmount +DeckHas:Ability$Counters Oracle:Flash\nReach\nWhenever another non-Human creature enters the battlefield under your control, you may pay {X}. When you do, put X +1/+1 counters on Wildborn Preserver. diff --git a/forge-gui/res/cardsfolder/w/wishclaw_talisman.txt b/forge-gui/res/cardsfolder/w/wishclaw_talisman.txt index 8b8319c45ff..36b04ab99cc 100644 --- a/forge-gui/res/cardsfolder/w/wishclaw_talisman.txt +++ b/forge-gui/res/cardsfolder/w/wishclaw_talisman.txt @@ -6,4 +6,5 @@ A:AB$ ChangeZone | Cost$ 1 T SubCounter<1/WISH> | Origin$ Library | Destination$ SVar:DBChoose:DB$ ChoosePlayer | Choices$ Player.Opponent | SubAbility$ DBGainControl SVar:DBGainControl:DB$ GainControl | Defined$ Self | NewController$ ChosenPlayer | SubAbility$ DBCleanup SVar:DBCleanup:DB$ Cleanup | ClearChosenPlayer$ True +DeckHas:Ability$Counters Oracle:Wishclaw Talisman enters the battlefield with three wish counters on it.\n{1}, {T}, Remove a wish counter from Wishclaw Talisman: Search your library for a card, put it into your hand, then shuffle your library. An opponent gains control of Wishclaw Talisman. Activate this ability only during your turn. diff --git a/forge-gui/res/cardsfolder/w/witchs_oven.txt b/forge-gui/res/cardsfolder/w/witchs_oven.txt index 43954e3ade5..fb3a411c19f 100644 --- a/forge-gui/res/cardsfolder/w/witchs_oven.txt +++ b/forge-gui/res/cardsfolder/w/witchs_oven.txt @@ -6,4 +6,5 @@ SVar:AIPreference:SacCost$Creature.token SVar:X:Count$Compare Y GE4.2.1 SVar:Y:Sacrificed$CardToughness AI:RemoveDeck:Random +DeckHas:Ability$Counters & Ability$LifeGain Oracle:{T}, Sacrifice a creature: Create a Food token. If the sacrificed creature's toughness was 4 or greater, create two Food tokens instead. (They're artifacts with "{2}, {T}, Sacrifice this artifact: You gain 3 life.") diff --git a/forge-gui/res/cardsfolder/w/workshop_elders.txt b/forge-gui/res/cardsfolder/w/workshop_elders.txt index 8d4ae5b13f5..8c65b3a4c9d 100644 --- a/forge-gui/res/cardsfolder/w/workshop_elders.txt +++ b/forge-gui/res/cardsfolder/w/workshop_elders.txt @@ -7,4 +7,5 @@ SVar:PlayMain1:TRUE T:Mode$ Phase | Phase$ BeginCombat | ValidPlayer$ You | TriggerZones$ Battlefield | OptionalDecider$ You | Execute$ TrigAnimate | TriggerDescription$ At the beginning of combat on your turn, you may have target noncreature artifact you control becomes a 0/0 artifact creature. If you do, put four +1/+1 counters on it. SVar:TrigAnimate:DB$ Animate | ValidTgts$ Artifact.nonCreature+YouCtrl | TgtPrompt$ Select noncreature artifact | Power$ 0 | Toughness$ 0 | Types$ Artifact,Creature | RemoveCardTypes$ True | Permanent$ True | SubAbility$ DBPutCounter SVar:DBPutCounter:DB$ PutCounter | Defined$ Targeted | CounterType$ P1P1 | CounterNum$ 4 +DeckHas:Ability$Counters Oracle:Artifact creatures you control have flying.\nAt the beginning of combat on your turn, you may have target noncreature artifact you control become a 0/0 artifact creature. If you do, put four +1/+1 counters on it. diff --git a/forge-gui/res/cardsfolder/w/worthy_knight.txt b/forge-gui/res/cardsfolder/w/worthy_knight.txt index 96335d5ea05..d00a124af20 100644 --- a/forge-gui/res/cardsfolder/w/worthy_knight.txt +++ b/forge-gui/res/cardsfolder/w/worthy_knight.txt @@ -6,4 +6,5 @@ T:Mode$ SpellCast | ValidCard$ Card.Knight | ValidActivatingPlayer$ You | Trigge SVar:TrigToken:DB$ Token | TokenAmount$ 1 | TokenOwner$ You | TokenScript$ w_1_1_human | LegacyImage$ w 1 1 human eld SVar:BuffedBy:Knight DeckHints:Type$Knight +DeckHas:Ability$Token Oracle:Whenever you cast a Knight spell, create a 1/1 white Human creature token.