From a1235a89de1d2d43f940cce048d13f604738203e Mon Sep 17 00:00:00 2001 From: Fulgur14 <54345051+Fulgur14@users.noreply.github.com> Date: Wed, 30 Oct 2024 12:57:52 +0100 Subject: [PATCH] Fourth dozen of FDN/J22 cards (#6470) --- .../main/java/forge/game/card/CounterEnumType.java | 4 ++++ .../res/cardsfolder/r/reaper_from_the_abyss.txt | 2 +- .../res/cardsfolder/upcoming/arbiter_of_woe.txt | 14 ++++++++++++++ .../res/cardsfolder/upcoming/banner_of_kinship.txt | 12 ++++++++++++ .../res/cardsfolder/upcoming/celestial_armor.txt | 10 ++++++++++ .../upcoming/kellan_planar_trailblazer.txt | 12 ++++++++++++ .../res/cardsfolder/upcoming/koma_world_eater.txt | 11 +++++++++++ .../cardsfolder/upcoming/kykar_zephyr_awakener.txt | 14 ++++++++++++++ forge-gui/res/cardsfolder/upcoming/leyline_axe.txt | 8 ++++++++ .../res/cardsfolder/upcoming/lunar_insight.txt | 6 ++++++ .../res/cardsfolder/upcoming/midnight_snack.txt | 10 ++++++++++ .../cardsfolder/upcoming/nazar_the_velvet_fang.txt | 14 ++++++++++++++ .../res/cardsfolder/upcoming/needletooth_pack.txt | 8 ++++++++ .../cardsfolder/upcoming/neerdiv_devious_diver.txt | 12 ++++++++++++ 14 files changed, 136 insertions(+), 1 deletion(-) create mode 100644 forge-gui/res/cardsfolder/upcoming/arbiter_of_woe.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/banner_of_kinship.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/celestial_armor.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/kellan_planar_trailblazer.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/koma_world_eater.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/kykar_zephyr_awakener.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/leyline_axe.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/lunar_insight.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/midnight_snack.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/nazar_the_velvet_fang.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/needletooth_pack.txt create mode 100644 forge-gui/res/cardsfolder/upcoming/neerdiv_devious_diver.txt 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 b56b8352582..06ae301c968 100644 --- a/forge-game/src/main/java/forge/game/card/CounterEnumType.java +++ b/forge-game/src/main/java/forge/game/card/CounterEnumType.java @@ -157,6 +157,10 @@ public enum CounterEnumType { FEATHER("FTHR", 195, 202, 165), + FEEDING("FEED", 245, 21, 5), + + FELLOWSHIP("FLWS", 255, 255, 255), + FETCH("FETCH", 180, 235, 52), FILIBUSTER("FLBTR", 255, 179, 119), diff --git a/forge-gui/res/cardsfolder/r/reaper_from_the_abyss.txt b/forge-gui/res/cardsfolder/r/reaper_from_the_abyss.txt index b66a574398b..43d88a54225 100644 --- a/forge-gui/res/cardsfolder/r/reaper_from_the_abyss.txt +++ b/forge-gui/res/cardsfolder/r/reaper_from_the_abyss.txt @@ -3,7 +3,7 @@ ManaCost:3 B B B Types:Creature Demon PT:6/6 K:Flying -T:Mode$ Phase | Phase$ End of Turn | CheckSVar$ Morbid | SVarCompare$ GE1 | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Morbid — At the beginning of each end step, if a creature died this turn, destroy target non-demon creature. +T:Mode$ Phase | Phase$ End of Turn | CheckSVar$ Morbid | SVarCompare$ GE1 | TriggerZones$ Battlefield | Execute$ TrigDestroy | TriggerDescription$ Morbid — At the beginning of each end step, if a creature died this turn, destroy target non-Demon creature. SVar:TrigDestroy:DB$ Destroy | ValidTgts$ Creature.nonDemon | TgtPrompt$ Select target non-Demon creature SVar:Morbid:Count$Morbid.1.0 Oracle:Flying\nMorbid — At the beginning of each end step, if a creature died this turn, destroy target non-Demon creature. diff --git a/forge-gui/res/cardsfolder/upcoming/arbiter_of_woe.txt b/forge-gui/res/cardsfolder/upcoming/arbiter_of_woe.txt new file mode 100644 index 00000000000..0e6bab4a5a2 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/arbiter_of_woe.txt @@ -0,0 +1,14 @@ +Name:Arbiter of Woe +ManaCost:4 B B +Types:Creature Demon +PT:5/4 +A:SP$ PermanentCreature | Cost$ 4 B B Sac<1/Creature> +K:Flying +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigDiscard | TriggerDescription$ When this creature enters, each opponent discards a card and loses 2 life. You draw a card and gain 2 life. +SVar:TrigDiscard:DB$ Discard | Defined$ Opponent | Mode$ TgtChoose | SubAbility$ DBLoseLife +SVar:DBLoseLife:DB$ LoseLife | LifeAmount$ 2 | Defined$ Opponent | SubAbility$ DBDraw +SVar:DBDraw:DB$ Draw | SubAbility$ DBGainLife +SVar:DBGainLife:DB$ GainLife | Defined$ You | LifeAmount$ 2 +DeckHas:Ability$LifeGain +SVar:AIPreference:SacCost$Creature.token,Creature.cmcLE4 +Oracle:As an additional cost to cast this spell, sacrifice a creature.\nFlying\nWhen this creature enters, each opponent discards a card and loses 2 life. You draw a card and gain 2 life. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/banner_of_kinship.txt b/forge-gui/res/cardsfolder/upcoming/banner_of_kinship.txt new file mode 100644 index 00000000000..d2bb8eddb73 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/banner_of_kinship.txt @@ -0,0 +1,12 @@ +Name:Banner of Kinship +ManaCost:5 +Types:Artifact +R:Event$ Moved | ValidCard$ Card.Self | Destination$ Battlefield | ReplaceWith$ ChooseCT | ReplacementResult$ Updated | Description$ As this artifact enters, choose a creature type. This artifact enters with a fellowship counter on it for each creature you control of the chosen type. +SVar:ChooseCT:DB$ ChooseType | Defined$ You | Type$ Creature | AILogic$ MostProminentInComputerDeck | SubAbility$ DBCounters +SVar:DBCounters:DB$ PutCounter | ETB$ True | Defined$ Self | CounterType$ FELLOWSHIP | CounterNum$ X +S:Mode$ Continuous | Affected$ Creature.ChosenType+YouCtrl | AddPower$ Y | AddToughness$ Y | Description$ Creatures you control of the chosen type get +1/+1 for each fellowship counter on this artifact. +SVar:X:Count$Valid Creature.ChosenType+YouCtrl +SVar:Y:Count$CardCounters.FELLOWSHIP +SVar:BuffedBy:Creature +AI:RemoveDeck:Random +Oracle:As this artifact enters, choose a creature type. This artifact enters with a fellowship counter on it for each creature you control of the chosen type.\nCreatures you control of the chosen type get +1/+1 for each fellowship counter on this artifact. diff --git a/forge-gui/res/cardsfolder/upcoming/celestial_armor.txt b/forge-gui/res/cardsfolder/upcoming/celestial_armor.txt new file mode 100644 index 00000000000..266c706644a --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/celestial_armor.txt @@ -0,0 +1,10 @@ +Name:Celestial Armor +ManaCost:2 W +Types:Artifact Equipment +K:Flash +T:Mode$ ChangesZone | Origin$ Any | Destination$ Battlefield | ValidCard$ Card.Self | Execute$ TrigAttach | TriggerDescription$ When this Equipment enters, attach it to target creature you control. That creature gains hexproof and indestructible until end of turn. +SVar:TrigAttach:DB$ Attach | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | SubAbility$ DBPump +SVar:DBPump:DB$ Pump | Defined$ Targeted | KW$ Hexproof & Indestructible +S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 2 | AddKeyword$ Flying |Description$ Equipped creature gets +2/+0 and has flying. +K:Equip:3 W +Oracle:Flash (You may cast this spell any time you could cast an instant.)\nWhen this Equipment enters, attach it to target creature you control. That creature gains hexproof and indestructible until end of turn.\nEquipped creature gets +2/+0 and has flying.\nEquip {3}{W} ({3}{W}: Attach to target creature you control. Equip only as a sorcery.) \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/kellan_planar_trailblazer.txt b/forge-gui/res/cardsfolder/upcoming/kellan_planar_trailblazer.txt new file mode 100644 index 00000000000..f267a8f6648 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/kellan_planar_trailblazer.txt @@ -0,0 +1,12 @@ +Name:Kellan, Planar Trailblazer +ManaCost:R +Types:Legendary Creature Human Faerie Scout +PT:2/1 +A:AB$ Animate | Cost$ 1 R | ConditionPresent$ Card.Self+Scout | Types$ Human,Faerie,Detective | RemoveCreatureTypes$ True | Triggers$ KellanCombat | Duration$ Permanent | SpellDescription$ If NICKNAME is a Scout, it becomes a Human Faerie Detective and gains "Whenever NICKNAME deals combat damage to a player, exile the top card of your library. You may play that card this turn." +SVar:KellanCombat:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigExile | TriggerZones$ Battlefield | TriggerDescription$ Whenever NICKNAME deals combat damage to a player, exile the top card of your library. You may play that card this turn. +SVar:TrigExile:DB$ Dig | Defined$ You | DigNum$ 1 | ChangeNum$ All | DestinationZone$ Exile | RememberChanged$ True | SubAbility$ DBEffect +SVar:DBEffect:DB$ Effect | StaticAbilities$ STPlay | RememberObjects$ Remembered | ForgetOnMoved$ Exile | SubAbility$ DBCleanup +SVar:STPlay:Mode$ Continuous | MayPlay$ True | EffectZone$ Command | Affected$ Card.IsRemembered | AffectedZone$ Exile | Description$ You may play this card this turn. +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +A:AB$ Animate | Cost$ 2 R | ConditionPresent$ Card.Self+Detective | Types$ Human,Faerie,Rogue | RemoveCreatureTypes$ True | Duration$ Permanent | Power$ 3 | Toughness$ 2 | Keywords$ Double Strike | SpellDescription$ If NICKNAME is a Detective, it becomes a 3/2 Human Faerie Rogue and gains double strike. +Oracle:{1}{R}: If Kellan is a Scout, it becomes a Human Faerie Detective and gains "Whenever Kellan deals combat damage to a player, exile the top card of your library. You may play that card this turn."\n{2}{R}: If Kellan is a Detective, it becomes a 3/2 Human Faerie Rogue and gains double strike. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/koma_world_eater.txt b/forge-gui/res/cardsfolder/upcoming/koma_world_eater.txt new file mode 100644 index 00000000000..12d414e25e3 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/koma_world_eater.txt @@ -0,0 +1,11 @@ +Name:Koma, World-Eater +ManaCost:3 G G U U +Types:Legendary Creature Serpent +PT:8/12 +R:Event$ Counter | ValidCard$ Card.Self | ValidSA$ Spell | Layer$ CantHappen | Description$ This spell can't be countered. +K:Trample +K:Ward:4 +T:Mode$ DamageDone | ValidSource$ Card.Self | ValidTarget$ Player | CombatDamage$ True | Execute$ TrigToken | TriggerDescription$ Whenever NICKNAME deals combat damage to a player, create four 3/3 blue Serpent creature tokens named Koma's Coil. +SVar:TrigToken:DB$ Token | TokenAmount$ 4 | TokenScript$ komas_coil | TokenOwner$ You +DeckHas:Ability$Token +Oracle:This spell can't be countered.\nTrample, ward {4}\nWhenever Koma deals combat damage to a player, create four 3/3 blue Serpent creature tokens named Koma's Coil. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/kykar_zephyr_awakener.txt b/forge-gui/res/cardsfolder/upcoming/kykar_zephyr_awakener.txt new file mode 100644 index 00000000000..d10ff0b2ca0 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/kykar_zephyr_awakener.txt @@ -0,0 +1,14 @@ +Name:Kykar, Zephyr Awakener +ManaCost:2 W U +Types:Legendary Creature Bird Wizard +PT:3/4 +K:Flying +T:Mode$ SpellCast | ValidCard$ Card.nonCreature | ValidActivatingPlayer$ You | Execute$ TrigCharm | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a noncreature spell, ABILITY +SVar:TrigCharm:DB$ Charm | Choices$ DBBlink,DBToken +SVar:DBBlink:DB$ ChangeZone | ValidTgts$ Creature.YouCtrl+Other | TgtPrompt$ Select another target creature you control | Origin$ Battlefield | Destination$ Exile | RememberChanged$ True | SubAbility$ DelTrig | SpellDescription$ Exile another target creature you control. Return that card to the battlefield under its owner's control at the beginning of the next end step. +SVar:DelTrig:DB$ DelayedTrigger | Mode$ Phase | Phase$ End of Turn | Execute$ TrigReturn | RememberObjects$ RememberedLKI | TriggerDescription$ Return exiled card to the battlefield under its owner's control. | SubAbility$ DBCleanup +SVar:TrigReturn:DB$ ChangeZone | Origin$ Exile | Destination$ Battlefield | Defined$ DelayTriggerRememberedLKI +SVar:DBCleanup:DB$ Cleanup | ClearRemembered$ True +SVar:DBToken:DB$ Token | TokenScript$ w_1_1_spirit_flying | SpellDescription$ Create a 1/1 white Spirit creature token with flying. +DeckHas:Ability$Token +Oracle:Flying\nWhenever you cast a noncreature spell, choose one —\n• Exile another target creature you control. Return that card to the battlefield under its owner's control at the beginning of the next end step.\n• Create a 1/1 white Spirit creature token with flying. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/leyline_axe.txt b/forge-gui/res/cardsfolder/upcoming/leyline_axe.txt new file mode 100644 index 00000000000..bf31243d58b --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/leyline_axe.txt @@ -0,0 +1,8 @@ +Name:Leyline Axe +ManaCost:4 +Types:Artifact Equipment +K:MayEffectFromOpeningHand:FromHand +SVar:FromHand:DB$ ChangeZone | Defined$ Self | Origin$ Hand | Destination$ Battlefield | SpellDescription$ If this card is in your opening hand, you may begin the game with it on the battlefield. +S:Mode$ Continuous | Affected$ Creature.EquippedBy | AddPower$ 1 | AddToughness$ 1 | AddKeyword$ Double Strike & Trample | Description$ Equipped creature gets +1/+1 and has double strike and trample. +K:Equip:3 +Oracle:If this card is in your opening hand, you may begin the game with it on the battlefield.\nEquipped creature gets +1/+1 and has double strike and trample.\nEquip {3} ({3}: Attach to target creature you control. Equip only as a sorcery.) \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/lunar_insight.txt b/forge-gui/res/cardsfolder/upcoming/lunar_insight.txt new file mode 100644 index 00000000000..0f26ac3d6bc --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/lunar_insight.txt @@ -0,0 +1,6 @@ +Name:Lunar Insight +ManaCost:4 U U +Types:Instant +A:SP$ Draw | NumCards$ X | SpellDescription$ Draw a card for each different mana value among nonland permanents you control. +SVar:X:Count$Valid Card.YouCtrl+nonLand$DifferentCMC +Oracle:Draw a card for each different mana value among nonland permanents you control. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/midnight_snack.txt b/forge-gui/res/cardsfolder/upcoming/midnight_snack.txt new file mode 100644 index 00000000000..e3f93cde524 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/midnight_snack.txt @@ -0,0 +1,10 @@ +Name:Midnight Snack +ManaCost:2 B +Types:Enchantment +T:Mode$ Phase | Phase$ End of Turn | ValidPlayer$ You | CheckSVar$ RaidTest | TriggerZones$ Battlefield | Execute$ TrigToken | TriggerDescription$ Raid — At the beginning of your end step, if you attacked this turn, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this token: You gain 3 life.") +SVar:TrigToken:DB$ Token | TokenScript$ c_a_food_sac +A:AB$ LoseLife | Cost$ 2 B Sac<1/CARDNAME> | ValidTgts$ Opponent | LifeAmount$ X | SpellDescription$ Target opponent loses X life, where X is the amount of life you gained this turn. +SVar:RaidTest:Count$AttackersDeclared +SVar:X:Count$LifeYouGainedThisTurn +DeckHas:Ability$LifeGain|Token +Oracle:Raid — At the beginning of your end step, if you attacked this turn, create a Food token. (It's an artifact with "{2}, {T}, Sacrifice this token: You gain 3 life.")\n{2}{B}, Sacrifice this enchantment: Target opponent loses X life, where X is the amount of life you gained this turn. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/nazar_the_velvet_fang.txt b/forge-gui/res/cardsfolder/upcoming/nazar_the_velvet_fang.txt new file mode 100644 index 00000000000..9cea52b33e9 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/nazar_the_velvet_fang.txt @@ -0,0 +1,14 @@ +Name:Nazar, the Velvet Fang +ManaCost:2 B +Types:Legendary Creature Vampire Warlock +PT:3/3 +K:Menace +T:Mode$ LifeGained | ValidPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Whenever you gain life, put a feeding counter on CARDNAME. +SVar:TrigPutCounter:DB$ PutCounter | Defined$ Self | CounterType$ FEEDING | CounterNum$ 1 +T:Mode$ Attacks | ValidCard$ Card.Self | Execute$ TrigDraw | TriggerDescription$ Whenever NICKNAME attacks, you may remove three feeding counters from it. If you do, you draw three cards and you lose 3 life. +SVar:TrigDraw:AB$ Draw | Cost$ SubCounter<3/FEEDING> | Defined$ You | NumCards$ 3 | SubAbility$ DBLoseLife +SVar:DBLoseLife:DB$ LoseLife | Defined$ You | LifeAmount$ 3 +SVar:HasAttackEffect:TRUE +DeckHas:Ability$Counters +DeckHints:Ability$LifeGain +Oracle:Menace (This creature can't be blocked except by two or more creatures.)\nWhenever you gain life, put a feeding counter on Nazar, the Velvet Fang.\nWhenever Nazar attacks, you may remove three feeding counters from it. If you do, you draw three cards and you lose 3 life. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/needletooth_pack.txt b/forge-gui/res/cardsfolder/upcoming/needletooth_pack.txt new file mode 100644 index 00000000000..4c7b222a5c3 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/needletooth_pack.txt @@ -0,0 +1,8 @@ +Name:Needletooth Pack +ManaCost:3 G G +Types:Creature Dinosaur +PT:4/5 +T:Mode$ Phase | Phase$ End of Turn | CheckSVar$ Morbid | SVarCompare$ GE1 | TriggerZones$ Battlefield | Execute$ TrigPutCounter | TriggerDescription$ Morbid — At the beginning of your end step, if a creature died this turn, put two +1/+1 counters on target creature you control. +SVar:TrigPutCounter:DB$ PutCounter | ValidTgts$ Creature.YouCtrl | TgtPrompt$ Select target creature you control | CounterType$ P1P1 | CounterNum$ 2 +SVar:Morbid:Count$Morbid.1.0 +Oracle:Morbid — At the beginning of your end step, if a creature died this turn, put two +1/+1 counters on target creature you control. \ No newline at end of file diff --git a/forge-gui/res/cardsfolder/upcoming/neerdiv_devious_diver.txt b/forge-gui/res/cardsfolder/upcoming/neerdiv_devious_diver.txt new file mode 100644 index 00000000000..c1bc83a84d8 --- /dev/null +++ b/forge-gui/res/cardsfolder/upcoming/neerdiv_devious_diver.txt @@ -0,0 +1,12 @@ +Name:Neerdiv, Devious Diver +ManaCost:2 U +Types:Legendary Creature Merfolk Rogue +PT:2/2 +T:Mode$ Taps | ValidCard$ Card.Self | Execute$ TrigMill | TriggerDescription$ Whenever CARDNAME becomes tapped, target player mills cards equal to its power. +SVar:TrigMill:DB$ Mill | NumCards$ X | ValidTgts$ Player +T:Mode$ SpellCast | ValidCard$ Card.wasCastFromYourGraveyard | ValidActivatingPlayer$ You | Execute$ TrigDraw | TriggerZones$ Battlefield | TriggerDescription$ Whenever you cast a spell from your graveyard or activate an ability of a card in your graveyard, draw a card and put a +1/+1 counter on NICKNAME. +T:Mode$ AbilityCast | ValidCard$ Card.inZoneGraveyard | ValidActivatingPlayer$ You | TriggerZones$ Battlefield | Execute$ TrigDraw | Secondary$ True | TriggerDescription$ Whenever you cast a spell from your graveyard or activate an ability of a card in your graveyard, draw a card and put a +1/+1 counter on NICKNAME. +SVar:TrigDraw:DB$ Draw | SubAbility$ DBPutCounter +SVar:DBPutCounter:DB$ PutCounter | CounterType$ P1P1 | CounterNum$ 1 | Defined$ Self +SVar:X:Count$CardPower +Oracle:Whenever Neerdiv, Devious Diver becomes tapped, target player mills cards equal to its power.\nWhenever you cast a spell from your graveyard or activate an ability of a card in your graveyard, draw a card and put a +1/+1 counter on Neerdiv.