Skip to content

Commit

Permalink
Fixed some primitives from issue #1085
Browse files Browse the repository at this point in the history
  • Loading branch information
Vitty85 committed Jul 11, 2023
1 parent d724263 commit c170733
Show file tree
Hide file tree
Showing 3 changed files with 65 additions and 52 deletions.
81 changes: 42 additions & 39 deletions projects/mtg/bin/Res/sets/primitives/borderline.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
grade=borderline
#Bordeline Primitives Pack for Wagic the Homebrew.
#Please keep these card alphabetized, and try to have the "name=" line at the top of each card
#I sorted this programmatically - Thanks to Vitty85 08-07-2023
#I sorted this programmatically - Thanks to Vitty85 11-07-2023
[card]
name=+2 Mace
auto={3}:equip
Expand Down Expand Up @@ -439,8 +439,8 @@ toughness=2
[/card]
[card]
name=Adarkar Unicorn
auto={T}:Add{U}
auto={T}:Add{1}{U}
auto={T}:Add{U} myupkeeponly
auto={T}:Add{1}{U} myupkeeponly
text={T}: Add {U} or {1}{U} to your mana pool. Spend this mana only to pay cumulative upkeep costs.
mana={1}{W}{W}
type=Creature
Expand Down Expand Up @@ -3730,7 +3730,8 @@ toughness=1
[/card]
[card]
name=Archghoul of Thraben
auto=@movedto(zombie|graveyard) from(mybattlefield):name(Look top card) all(*[zpos=1]|mylibrary) moveto(myhand) and!( transforms((,newability[if cantargetcard(*[zombie]|*) then choice name(Put in hand) name(Put in hand) donothing],newability[choice name(Put back in library) moveto(mylibrary)],newability[choice name(Put in graveyard) moveto(mygraveyard)])) oneshot )!
auto=@movedto(other zombie|graveyard) from(mybattlefield):name(Look top card) all(*[zpos=1]|mylibrary) moveto(myhand) and!( transforms((,newability[if cantargetcard(*[zombie]|*) then choice name(Put in hand) name(Put in hand) donothing],newability[choice name(Put back in library) moveto(mylibrary)],newability[choice name(Put in graveyard) moveto(mygraveyard)])) oneshot )!
auto=_DIES_name(Look top card) all(*[zpos=1]|mylibrary) moveto(myhand) and!( transforms((,newability[if cantargetcard(*[zombie]|*) then choice name(Put in hand) name(Put in hand) donothing],newability[choice name(Put back in library) moveto(mylibrary)],newability[choice name(Put in graveyard) moveto(mygraveyard)])) oneshot )!
text=Whenever Archghoul of Thraben or another Zombie you control dies, look at the top card of your library. If it's a Zombie card, you may reveal it and put it into your hand. If you don't put the card into your hand, you may put it into your graveyard.
mana={2}{B}
type=Creature
Expand Down Expand Up @@ -3996,10 +3997,8 @@ type=Snow Artifact
[/card]
[card]
name=Arcum's Weathervane
auto={2}{T}:target(land[snow]) transforms((removetypes,newability[becomes(Land)])) forever
auto={2}{T}:target(land[basic;snow]) transforms((removetypes,newability[becomes(Basic Land)])) forever
auto={2}{T}:target(land[legendary;snow]) transforms((removetypes,newability[becomes(Legendary Land)])) forever
auto={2}{T}:target(land[basic;-snow]) transforms((Snow)) forever
auto={2}{T}:name(Snow land is no longer snow) target(land[snow]|battlefield) transforms((,newability[losesatype(Snow)])) forever
auto={2}{T}:name(Basic land becomes snow) target(land[-snow&basic]|battlefield) becomes(Snow) forever
text={2}, {T}: Target snow land is no longer snow. -- {2}, {T}: Target nonsnow basic land becomes snow.
mana={2}
type=Artifact
Expand Down Expand Up @@ -5129,8 +5128,7 @@ name=Athreos, God of Passage
abilities=indestructible
auto=this(variable{orzhov}<7) transforms((removetypes,newability[becomes(Legendary Enchantment God)]))
auto=this(variable{orzhov}>6) transforms((Legendary Enchantment Creature))
auto=@movedto(other creature|graveyard) from(mybattlefield) restriction{compare(opponentlifetotal)~lessthan~4}:all(trigger[to]) transforms((,newability[moveto(myhand)])) oneshot
auto=@movedto(other creature|graveyard) from(mybattlefield) restriction{compare(opponentlifetotal)~morethan~3}:all(trigger[to]) transforms((,newability[if compare(genrand2)~equalto~0 then moveto(myhand) else life:-3 opponent])) oneshot
auto=@movedto(other creature|graveyard) from(mybattlefield):name(Return or pay life) all(trigger[to]) name(Return or pay life) moveto(opponentreveal) and!( transforms((,newability[choice name(Don't pay life) moveto(opponenthand)],newability[choice name(Pay life) moveto(opponentGraveyard) and!( life:-3 controller )!])) oneshot )!
text=Indestructible -- As long as your devotion to white and black is less than seven, Athreos isn't a creature. -- Whenever another creature you own dies, return it to your hand unless target opponent pays 3 life.
mana={1}{W}{B}
type=Legendary Enchantment Creature
Expand All @@ -5143,8 +5141,9 @@ name=Athreos, Shroud-Veiled
abilities=indestructible
auto=this(variable{orzhov}<7) transforms((removetypes,newability[becomes(Legendary Enchantment God)]))
auto=this(variable{orzhov}>6) transforms((Legendary Enchantment Creature))
auto=@each my endofturn:counter(0/0,1,Coin) target(other creature|battlefield)
auto=@movedto(creature[counter{0/0.1.Coin}]|graveyard,exile):name(Return to battlefield) all(trigger[to]) moveTo(mybattlefield)
auto=@each my endofturn:name(Put coin counter) target(other creature|battlefield) counter(0/0,1,Coin)
auto=@movedto(creature[counter{0/0.1.Coin}]|graveyard):name(Return to battlefield) all(trigger[to]) name(Return to battlefield) moveTo(mybattlefield)
auto=@movedto(creature[counter{0/0.1.Coin}]|exile):name(Return to battlefield) all(trigger[to]) name(Return to battlefield) moveTo(mybattlefield)
text=Indestructible -- As long as your devotion to white and black is less than seven, Athreos isn't a creature. -- At the beginning of your end step, put a coin counter on another target creature. -- Whenever a creature with a coin counter on it dies or is put into exile, return that card to the battlefield under your control.
mana={4}{W}{B}
type=Legendary Enchantment Creature
Expand Down Expand Up @@ -6078,17 +6077,21 @@ type=Legendary Land
[/card]
[card]
name=Azor's Gateway
auto={1}{T}:draw:1 controller && transforms((,newability[notatarget(*|myhand) moveto(myexile) and!( counter(0/0.1.AzorExiled) )!])) forever
auto=aslongas(*[counter{0/0.1.AzorExiled}]|myexile) flip(Sanctum of the Sun) >4
backside=Sanctum of the Sun
restriction=compare(isflipped)~equalto~0
anyzone={0}:doubleside(backside)
auto={1}{T}:name(Draw and exile) draw:1 controller && transforms((,newability[name(Exile a card) notatarget(*|myhand) moveto(myexile) and!( becomes(AzorExiled) forever )!])) forever
auto=aslongas(AzorExiled|myexile) transforms((,newability[flip(Sanctum of the Sun)],newability[untap],newability[life:5 controller],newability[all(AzorExiled|myexile) losesatype(AzorExiled)])) forever >4
text={1}, {T}: Draw a card, then exile a card from your hand. If cards with five or more different mana values are exiled with Azor's Gateway, you gain 5 life, untap Azor's Gateway, and transform it.
mana={2}
type=Legendary Artifact
[/card]
[card]
name=Azor, the Lawbringer
abilities=flying
auto=phaseaction[upkeep once] maxCast(*[instant;sorcery])0 opponent ueot
auto=_ATTACKING_may pay({X}{W}{U}{U}) name(Gain X life and draw X cards) life:x controller && draw:x controller
auto=emblem transforms((,newability[@each opponent untap:name(Opponent can't cast spell) all(*[instant;sorcery]|opponentcastingzone) transforms((,newability[changecost(colorless:+9999)])) ueot])) uynt
auto=emblem transforms((,newability[@each opponent draw:name(Opponent can't cast spell) all(*[instant;sorcery]|opponentcastingzone) transforms((,newability[changecost(colorless:+9999)])) ueot])) uynt
auto=_ATTACKING_may name(Gain X life and draw X cards) pay({X}{W}{U}{U}) name(Gain X life and draw X cards) life:x controller && draw:x controller
text=Flying -- When Azor, the Lawbringer enters the battlefield, each opponent can't cast instant or sorcery spells during that player's next turn. -- Whenever Azor attacks, you may pay {X}{W}{U}{U}. If you do, you gain X life and draw X cards.
mana={2}{W}{W}{U}{U}
type=Legendary Creature
Expand All @@ -6098,7 +6101,7 @@ toughness=6
[/card]
[card]
name=Azorius Knight-Arbiter
abilities=unblockable, vigilance
abilities=unblockable,vigilance
text=Vigilance -- Azorius Knight-Arbiter can't be blocked.
mana={3}{W}{U}
type=Creature
Expand Down Expand Up @@ -6306,9 +6309,9 @@ type=Artifact
[/card]
[card]
name=Bag of Holding
auto=@discarded(*|myhand):name(Move to exile) transforms((,newability[all(*[zpos=type:*:mygraveyard]|mygraveyard) moveto(myexile) and!( counter(0/0.1.BagExiled) )!])) oneshot
auto=@discarded(*|myhand):name(Move to exile) all(trigger) name(Move to exile) moveto(myexile) and!( becomes(BagExiled) forever )!
auto={2}{T}:name(Draw and discard) _LOOT_
auto={4}{T}{S}:name(Return all exiled card) all(*[counter{0/0.1.BagExiled}]|myexile) moveto(ownerhand)
auto={4}{T}{S}:name(Return all exiled card) all(BagExiled|myexile) moveto(ownerhand)
text=Whenever you discard a card, exile that card from your graveyard. -- {2}, {T}: Draw a card, then discard a card. -- {4}, {T}, Sacrifice Bag of Holding: Return all cards exiled with Bag of Holding to their owner's hand.
mana={1}
type=Artifact
Expand Down Expand Up @@ -7425,8 +7428,8 @@ toughness=1
[/card]
[card]
name=Battletide Alchemist
auto=@damaged(player) from(*|opponentbattlefield,opponentstack,opponenthand,opponentgraveyard,opponentlibrary,opponentexile):may foreach(cleric|mybattlefield) prevent:1 controller
auto=@damaged(player) from(*|mybattlefield,mystack,myhand,mygraveyard,mylibrary,myexile):may foreach(cleric|mybattlefield) prevent:1 opponent
auto={0}:name(Prevent damage to you) foreach(cleric|mybattlefield) prevent:1 controller limit:1
auto={0}:name(Prevent damage to opponent) foreach(cleric|mybattlefield) prevent:1 opponent limit:1
text=If a source would deal damage to a player, you may prevent X of that damage, where X is the number of Clerics you control.
mana={3}{W}{W}
type=Creature
Expand Down Expand Up @@ -8150,11 +8153,13 @@ type=Sorcery
[/card]
[card]
name=Betrayal of Flesh
target=creature
other={S(land|myBattlefield)}{S(land|myBattlefield)}{S(land|myBattlefield)} name(Entwine)
auto=if paid(alternative) then destroy && moveTo(myBattlefield) target(creature|mygraveyard)
auto=ifnot paid(alternative) then transforms((,newability[choice name(Destroy) destroy],newability[choice name(Return) moveTo(myBattlefield) target(creature|mygraveyard)]))
text=Choose one Destroy target creature; or return target creature card from your graveyard to the battlefield. -- Entwine'sacrifice three lands. (Choose both if you pay the entwine cost.)
other={5}{B}{S(land|myBattlefield)}{S(land|myBattlefield)}{S(land|myBattlefield)} name(Entwine)
otherrestriction=type(land|mybattlefield)~morethan~2
auto=if paid(alternative) then if type(creature|battlefield)~morethan~0 then name(Destroy creature) name(Destroy creature) name(Destroy creature) target(creature|battlefield) destroy and!( name(Return creature) name(Return creature) target(creature|mygraveyard) moveTo(myBattlefield) )!
auto=if paid(alternative) then if type(creature|battlefield)~equalto~0 then if type(creature|mygraveyard)~morethan~0 then name(Return creature) name(Return creature) name(Return creature) target(creature|mygraveyard) moveTo(myBattlefield)
auto=ifnot paid(alternative) then if type(creature|battlefield)~morethan~0 then choice name(Destroy creature) name(Destroy creature) name(Destroy creature) target(creature|battlefield) destroy
auto=ifnot paid(alternative) then if type(creature|mygraveyard)~morethan~0 then choice name(Return creature) name(Return creature) name(Return creature) target(creature|mygraveyard) moveTo(myBattlefield)
text=Choose one -- Destroy target creature -- Return target creature card from your graveyard to the battlefield. -- Entwine'sacrifice three lands. (Choose both if you pay the entwine cost.)
mana={5}{B}
type=Instant
[/card]
Expand Down Expand Up @@ -11490,8 +11495,8 @@ type=Instant
[/card]
[card]
name=Bounty of the Luxa
#auto=@each my firstmain:if type(this[counter{0/0.1.flood}])~morethan~0 ability$!thisforeach(counter{0/0,1,flood}) counter(0/0,-1,flood) && add{1}{G}{U}!$ controller else ability$!counter(0/0,1,flood) && draw:1 controller!$ controller
auto=@each my firstmain:if type(this[counter{0/0.1.flood}])~equalto~0 then counter(0/0,1,flood) && draw:1 controller else removeallcounters(0/0,1,flood) && add {1}{G}{U}
auto=@each my firstmain restriction{compare(hascntflood)~equalto~0}:name(Put counter and draw) name(Put counter and draw) counter(0/0,1,flood) && draw:1 controller
auto=@each my firstmain restriction{compare(hascntflood)~morethan~0}:name(Remove all counters and add mana) name(Remove all counters and add mana) removeallcounters(0/0,1,flood) && add{1}{G}{U} controller
text=At the beginning of your precombat main phase, remove all flood counters from Bounty of the Luxa. If no counters were removed this way, put a flood counter on Bounty of the Luxa and draw a card. Otherwise, add {1}{G}{U} to your mana pool.
mana={2}{G}{U}
type=Enchantment
Expand Down Expand Up @@ -12079,7 +12084,9 @@ toughness=3
[/card]
[card]
name=Brightmare
auto=may tap target(creature)
auto=if type(creature|opponentbattlefield)~morethan~0 then choice name(Tap opponent's creature) name(Tap opponent's creature) target(creature|opponentbattlefield) transforms((,newability[tap],newability[life:power opponent])) oneshot
auto=choice name(Don't tap any creature) donothing
auto=choice name(Tap your creature) target(creature|mybattlefield) transforms((,newability[tap],newability[life:power controller])) oneshot
text=When Brightmare enters the battlefield, tap up to one target creature. You gain life equal to that creature's power.
mana={2}{W}
type=Creature
Expand Down Expand Up @@ -12470,9 +12477,9 @@ type=Sorcery
[/card]
[card]
name=Brudiclad, Telchor Engineer
auto=lord(creature[token]|myBattlefield) haste
auto=@each my combatbegins:may all(creature[token]|myBattlefield) transforms((,newability[copy target(other creature[token]|myBattlefield)])) forever
auto=@each my combatbegins:token(Phyrexian Myr,Artifact Creature Phyrexian Myr,2/1,blue)
auto=lord(creature[token]|mybattlefield) haste
auto=@each my combatbegins:may name(Choose and copy a token) target(*[token]|mybattlefield) transforms((tobecopied,newability[all(other *[token]|mybattlefield) transforms((,newability[copy all(tobecopied[token]|mybattlefield)])) ueot])) ueot
auto=@each my combatbegins:name(Create myr) token(Phyrexian Myr,Artifact Creature Phyrexian Myr,2/1,blue)
text=Creature tokens you control have haste. -- At the beginning of combat on your turn, create a 2/1 blue Phyrexian Myr artifact creature token. Then you may choose a token you control. If you do, each other token you control becomes a copy of that token.
mana={4}{U}{R}
type=Legendary Creature
Expand All @@ -12482,8 +12489,8 @@ toughness=4
[/card]
[card]
name=Bruenor Battlehammer
auto=lord(creature[equipped]|myBattlefield) transforms((,newability[thisforeach(gear) 2/0]))
auto={0}:name(Pay 0 for first equip) target(artifact[equipment]|myBattlefield) transforms((,newability[name(Equip to a creature) rehook target(creature|myBattlefield)])) oneshot limit:1
auto=lord(creature[equipped]|mybattlefield) transforms((,newability[thisforeach(gear) 2/0]))
auto={0}:name(Pay 0 for first equip) target(artifact[equipment]|mybattlefield) transforms((,newability[name(Equip to a creature) rehook target(creature|mybattlefield)])) oneshot limit:1
text=Each creature you control gets +2/+0 for each Equipment attached to it. -- You may pay {0} rather than pay the equip cost of the first equip ability you activate each turn.
mana={2}{R}{W}
type=Legendary Creature
Expand Down Expand Up @@ -12817,8 +12824,7 @@ toughness=1
[card]
name=Burning-Rune Demon
abilities=flying
auto=choice name(Search library) target(*[-Burning-Rune Demon]|mylibrary) moveto(myreveal) and!( moveto(mylibrary) and!( transforms((,newability[name(Search another card) target(*[-Burning-Rune Demon;notshare!name!]|mylibrary) moveto(myreveal) and!( moveto(mylibrary) and!( ability$!name(Put in hand from library) name(Put in hand from library) target(*[fresh]|opponentlibrary) moveto(opponenthand) and!( all(*[fresh]|opponentlibrary) moveto(opponentgraveyard) and!( shuffle opponent )! )! !$ opponent )! )!])) oneshot )! )!
auto=choice name(Don't search) donothing
auto=may name(Search library) target(*[-Burning-Rune Demon]|mylibrary) moveto(myreveal) and!( moveto(mylibrary) and!( transforms((,newability[name(Search another card) target(*[-Burning-Rune Demon;notshare!name!]|mylibrary) moveto(myreveal) and!( moveto(mylibrary) and!( ability$!name(Put in hand from library) name(Put in hand from library) target(*[fresh]|opponentlibrary) moveto(opponenthand) and!( all(*[fresh]|opponentlibrary) moveto(opponentgraveyard) and!( shuffle opponent )! )! !$ opponent )! )!])) oneshot )! )!
text=Flying -- When Burning-Rune Demon enters the battlefield, you may search your library for exactly two cards not named Burning-Rune Demon that have different names. If you do, reveal those cards. An opponent chooses one of them. Put the chosen card into your hand and the other into your graveyard, then shuffle your library.
mana={4}{B}{B}
type=Creature
Expand Down Expand Up @@ -81796,9 +81802,6 @@ subtype=Shrine
[/card]
[card]
name=Sanctum of the Sun
auto=untap
auto=life:5 controller
auto=all(*|myexile) removeallcounters(0/0,1,AzorExiled)
auto={T}:name(Add white mana) name(Add white mana) thisforeach(variable{lifetotal}) add{W}
auto={T}:name(Add blue mana) name(Add blue mana) thisforeach(variable{lifetotal}) add{U}
auto={T}:name(Add black mana) name(Add black mana) thisforeach(variable{lifetotal}) add{B}
Expand Down
Loading

0 comments on commit c170733

Please sign in to comment.