From 96ab9cf59dc8804d597171723af30bd6a2ec4972 Mon Sep 17 00:00:00 2001 From: Eduardo MG Date: Mon, 8 May 2023 00:21:34 -0600 Subject: [PATCH] Bug fixes to primitives, Planar Guide doesn't lose eveyone into the AEther anymore Brutal Cathar Treasure Hunt casted by AI Realm Seekers Taigam, Sidisi's Hand Unholy Indenture should not work with tokens fixed hybrid mana in SNC --- .../mtg/bin/Res/sets/primitives/borderline.txt | 17 ++++++++--------- projects/mtg/bin/Res/sets/primitives/mtg.txt | 7 ++++--- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/projects/mtg/bin/Res/sets/primitives/borderline.txt b/projects/mtg/bin/Res/sets/primitives/borderline.txt index 13c4fcbbd..8bf5aee3f 100644 --- a/projects/mtg/bin/Res/sets/primitives/borderline.txt +++ b/projects/mtg/bin/Res/sets/primitives/borderline.txt @@ -10849,7 +10849,7 @@ type=Instant [/card] [card] name=Brokers Initiate -auto={4}{G/U}:transforms((,setpower=5,settoughness=5)) ueot +auto={4}{GU}:transforms((,setpower=5,settoughness=5)) ueot text={4}{G/U}: Brokers Initiate has base power and toughness 5/5 until end of turn. mana={W} type=Creature @@ -11541,7 +11541,7 @@ type=Instant [/card] [card] name=Cabaretti Initiate -auto={2}{R/W}:double strike ueot +auto={2}{RW}:double strike ueot text={2}{R/W}: Cabaretti Initiate gains double strike until end of turn. mana={G} type=Creature @@ -50974,7 +50974,7 @@ type=Instant [/card] [card] name=Maestros Initiate -autograveyard={4}{U/R}{E}:draw:2 && transforms((,newability[target(*|myhand) reject])) forever +autograveyard={4}{UR}{E}:draw:2 && transforms((,newability[target(*|myhand) reject])) forever text={4}{U/R}, Exile Maestros Initiate from your graveyard: Draw two cards, then discard a card. mana={2}{B} type=Creature @@ -54712,7 +54712,6 @@ name=Moonrage Brute abilities=first strike,nightbound backside=Brutal Cathar auto=if type(*[day;night]|battlefield)~equalto~0 then if type(*[nonight]|battlefield)~equalto~0 then name(It becomes night) name(It becomes night) name(It becomes night) activate castcard(noevent named!:Night:!) -auto=name(Exile a creature) target(creature|opponentbattlefield) (blink)forsrc auto=@targeted(this|myBattlefield) from(*[instant;sorcery]|opponentzones):choice name(This spell costs 3 life more) name(This spell costs 3 life more) target(*[instant;sorcery]|opponentzones) transforms((,newability[pay[[{L:3}]] name(pay 3 life) donothing?fizzle])) oneshot text=First strike -- Ward-Pay 3 life. -- Nightbound (If a player casts at least two spells during their own turn, it becomes day next turn) // Brutal Cathar type=Creature @@ -58192,7 +58191,7 @@ type=Instant [card] name=Obscura Initiate abilities=flying -auto={1}{W/B}:lifelink ueot +auto={1}{WB}:lifelink ueot text=Flying -- {1}{W/B}: Obscura Initiate gains lifelink until end of turn. mana={2}{U} type=Creature @@ -69314,7 +69313,7 @@ toughness=1 [/card] [card] name=Riveteers Initiate -auto={1}{B/G}:deathtouch ueot +auto={1}{BG}:deathtouch ueot text={1}{B/G}: Riveteers Initiate gains deathtouch until end of turn. mana={1}{R} type=Creature @@ -83935,7 +83934,7 @@ name=Taigam, Sidisi's Hand auto=phasealter(remove,draw,controller) aicode=name(look) activate name(look) transforms((,newability[foreach(*[zpos<=3]|mylibrary) moverandom(*[zpos<=3]) from(mylibrary) to(mylibrary)])) ueot auto=@each my upkeep:name(look) reveal:4 optionone name(Get a Card) target(<1>*|reveal) moveto(myhand) optiononeend optiontwo name(put in grave) all(*|reveal) moveto(mygraveyard) optiontwoend revealend -auto={B}{T}{E(*|myGraveyard}:target(creature) -1/-1*thatmuch ueot +auto={B}{T}{E(*|myGraveyard)}:target(creature) -1/-1*thatmuch ueot text=Skip your draw step. -- At the beginning of your upkeep, look at the top three cards of your library. Put one of them into your hand and the rest into your graveyard. -- {B}, {T}, Exile X cards from your graveyard: Target creature gets -X/-X until end of turn. mana={3}{U}{B} type=Legendary Creature @@ -90698,7 +90697,7 @@ type=Instant [card] name=Unholy Indenture target=creature -auto=@movedTo(mytgt|graveyard) from(battlefield):transforms((,newability[moveTo(mybattlefield)],newability[counter(1/1)])) +auto=@movedTo(mytgt|graveyard) from(battlefield):if cantargetcard(*[-token]|*) then transforms((,newability[moveTo(mybattlefield)],newability[counter(1/1)])) text=Enchant creature -- When enchanted creature dies, return that card to the battlefield under your control with a +1/+1 counter on it. mana={2}{B} type=Enchantment @@ -93553,7 +93552,7 @@ name=Volcanic Spite target=creature,planeswalker,battle auto=damage:3 auto=may bottomoflibrary notAtarget(*|myHand) and!(draw:1 controller)! -text=Volcanic Spite deals 3 damage to target creature, . You may put a card from your hand on the bottom of your library. If you do, draw a card. +text=Volcanic Spite deals 3 damage to target creature, planeswalker, or battle. You may put a card from your hand on the bottom of your library. If you do, draw a card. mana={1}{R} type=Instant [/card] diff --git a/projects/mtg/bin/Res/sets/primitives/mtg.txt b/projects/mtg/bin/Res/sets/primitives/mtg.txt index 52e6e3c30..5e96b2664 100644 --- a/projects/mtg/bin/Res/sets/primitives/mtg.txt +++ b/projects/mtg/bin/Res/sets/primitives/mtg.txt @@ -87320,7 +87320,7 @@ type=Artifact [/card] [card] name=Planar Guide -auto={3}{W}{E}:(blink)ueot all(creature) +auto={3}{W}{E}:all(creature) transforms((,newability[moveto(exile)],newability[if cantargetcard(*[-token]|*) then phaseactionmulti[endofturn once] moveto(ownerbattlefield)])) text={3}{W}, Exile Planar Guide: Exile all creatures. At the beginning of the next end step, return those cards to the battlefield under their owners' control. mana={W} type=Creature @@ -92742,7 +92742,7 @@ toughness=2 name=Realm Seekers auto=counter(1/1,type:*:hand) aicode=activate target(land|mylibrary) moveto(myhand) -auto={1}{C(1/1,-1)}:name(search card) Reveal:type:*:mylibrary revealzone(mylibrary) optionone name(choose card) target(<1>land|reveal) transforms((,newability[all(other *|reveal) moveto(mylibrary) and!(shuffle)!],newability[moveto(myhand)])) optiononeend optiontwo name(shuffle) bottomoflibrary target(<1>*|reveal) and!( all(*|reveal) bottomoflibrary and!(shuffle)! )! optiontwoend revealend +auto={2}{G}{C(1/1,-1)}:name(search card) Reveal:type:*:mylibrary revealzone(mylibrary) optionone name(choose card) target(<1>land|reveal) transforms((,newability[all(other *|reveal) moveto(mylibrary) and!(shuffle)!],newability[moveto(myhand)])) optiononeend optiontwo name(shuffle) bottomoflibrary target(<1>*|reveal) and!( all(*|reveal) bottomoflibrary and!(shuffle)! )! optiontwoend revealend text=Realm Seekers enters the battlefield with X +1/+1 counters on it, where X is the total number of cards in all players' hands. -- {2}{G}, Remove a +1/+1 counter from Realm Seekers: Search your library for a land card, reveal it, put it into your hand, then shuffle your library. mana={4}{G}{G} type=Creature @@ -123711,7 +123711,8 @@ toughness=2 [/card] [card] name=Treasure Hunt -auto=Reveal:1 revealzone(mylibrary) revealuntil(*[-land]|mylibrary) optionone choice name(Get Cards) target(*|reveal) all(*|reveal) moveto(myhand) optiononeend revealend +aicode=activate transforms((,newability[all(*[zpos<=findfirsttypenonland]|mylibrary) moveto(myreveal) and!( bottomoflibrary )!])) oneshot +auto=Reveal:1 revealzone(mylibrary) revealuntil(*[-land]|mylibrary) optionone all(*|reveal) moveto(myhand) optiononeend revealend text=Reveal cards from the top of your library until you reveal a nonland card, then put all cards revealed this way into your hand. mana={1}{U} type=Sorcery