Fixed some primitives, added some new primitives from MAT set, added new triggers to handle better counters, improved a lot of abilities for replacing atoi with WParserInt class, fixed bug on change types on xone changing, fixed bug on manacost during mutate and flip actions, fixed other minor bugs.

This commit is contained in:
Vittorio Alfieri
2023-05-21 18:52:16 +02:00
parent c3e8379258
commit dd28f274d1
11 changed files with 482 additions and 90 deletions

View File

@@ -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 20-05-2023
#I sorted this programmatically - Thanks to Vitty85 21-05-2023
[card]
name=+2 Mace
auto={3}:equip
@@ -8584,24 +8584,27 @@ toughness=4
[card]
name=Bloated Processor
auto={S(other *[phyrexian]|mybattlefield)}:name(Put 1/1 counter) counter(1/1)
auto=_DIES_this(counter{1/1}=0) transforms((,newability[name(Incubate 3) name(Incubate 3) activate castcard(noevent costx!:3:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=1) transforms((,newability[name(Incubate 4) name(Incubate 4) activate castcard(noevent costx!:4:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=2) transforms((,newability[name(Incubate 5) name(Incubate 5) activate castcard(noevent costx!:5:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=3) transforms((,newability[name(Incubate 6) name(Incubate 6) activate castcard(noevent costx!:6:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=4) transforms((,newability[name(Incubate 7) name(Incubate 7) activate castcard(noevent costx!:7:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=5) transforms((,newability[name(Incubate 8) name(Incubate 8) activate castcard(noevent costx!:8:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=6) transforms((,newability[name(Incubate 9) name(Incubate 9) activate castcard(noevent costx!:9:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=7) transforms((,newability[name(Incubate 10) name(Incubate 10) activate castcard(noevent costx!:10:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=8) transforms((,newability[name(Incubate 11) name(Incubate 11) activate castcard(noevent costx!:11:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=9) transforms((,newability[name(Incubate 12) name(Incubate 12) activate castcard(noevent costx!:12:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=10) transforms((,newability[name(Incubate 13) name(Incubate 13) activate castcard(noevent costx!:13:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=11) transforms((,newability[name(Incubate 14) name(Incubate 14) activate castcard(noevent costx!:14:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=12) transforms((,newability[name(Incubate 15) name(Incubate 15) activate castcard(noevent costx!:15:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=13) transforms((,newability[name(Incubate 16) name(Incubate 16) activate castcard(noevent costx!:16:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=14) transforms((,newability[name(Incubate 17) name(Incubate 17) activate castcard(noevent costx!:17:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=15) transforms((,newability[name(Incubate 18) name(Incubate 18) activate castcard(noevent costx!:18:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}=16) transforms((,newability[name(Incubate 19) name(Incubate 19) activate castcard(noevent costx!:19:! named!:Incubator:!)])) oneshot
auto=_DIES_this(counter{1/1}>=17) transforms((,newability[name(Incubate 20) name(Incubate 20) activate castcard(noevent costx!:20:! named!:Incubator:!)])) oneshot
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~0}:name(Incubate 0) name(Incubate 0) activate castcard(noevent costx!:0:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~1}:name(Incubate 1) name(Incubate 1) activate castcard(noevent costx!:1:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~2}:name(Incubate 2) name(Incubate 2) activate castcard(noevent costx!:2:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~3}:name(Incubate 3) name(Incubate 3) activate castcard(noevent costx!:3:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~4}:name(Incubate 4) name(Incubate 4) activate castcard(noevent costx!:4:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~5}:name(Incubate 5) name(Incubate 5) activate castcard(noevent costx!:5:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~6}:name(Incubate 6) name(Incubate 6) activate castcard(noevent costx!:6:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~7}:name(Incubate 7) name(Incubate 7) activate castcard(noevent costx!:7:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~8}:name(Incubate 8) name(Incubate 8) activate castcard(noevent costx!:8:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~9}:name(Incubate 9) name(Incubate 9) activate castcard(noevent costx!:9:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~10}:name(Incubate 10) name(Incubate 10) activate castcard(noevent costx!:10:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~11}:name(Incubate 11) name(Incubate 11) activate castcard(noevent costx!:11:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~12}:name(Incubate 12) name(Incubate 12) activate castcard(noevent costx!:12:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~13}:name(Incubate 13) name(Incubate 13) activate castcard(noevent costx!:13:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~14}:name(Incubate 14) name(Incubate 14) activate castcard(noevent costx!:14:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~15}:name(Incubate 15) name(Incubate 15) activate castcard(noevent costx!:15:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~16}:name(Incubate 16) name(Incubate 16) activate castcard(noevent costx!:16:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~17}:name(Incubate 17) name(Incubate 17) activate castcard(noevent costx!:17:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~18}:name(Incubate 18) name(Incubate 18) activate castcard(noevent costx!:18:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~equalto~19}:name(Incubate 19) name(Incubate 19) activate castcard(noevent costx!:19:! named!:Incubator:!)
auto=@movedto(this|graveyard) from(battlefield) restriction{compare(power)~morethan~19}:name(Incubate 20) name(Incubate 20) activate castcard(noevent costx!:20:! named!:Incubator:!)
text=Sacrifice another Phyrexian: Put a +1/+1 counter on Bloated Processor. -- When Bloated Processor dies, incubate X, where X is its power. (Create an Incubator token with X +1/+1 counters on it and "{2}: Transform this artifact." It transforms into a 0/0 Phyrexian artifact creature.)
mana={2}{B}
type=Creature
@@ -16559,7 +16562,7 @@ toughness=2
[/card]
[card]
name=Conclave Mentor
auto=@counteradded(1/1) from(creature|mybattlefield) except(Conclave Mentor):may counter(1/1) target(creature[counter{1/1.1}]|myBattlefield)
auto=@totalcounteradded(1/1) from(creature|mybattlefield) plus(1):ability$!name(That many plus 1) donothing!$ controller
auto=_DIES_life:power controller
text=If one or more +1/+1 counters would be put on a creature you control, that many plus one +1/+1 counters are put on that creature instead. -- When Conclave Mentor dies, you gain life equal to its power.
mana={G}{W}
@@ -17106,6 +17109,17 @@ power=1
toughness=3
[/card]
[card]
name=Coppercoat Vanguard
auto=lord(other *[human]|myBattlefield) 1/0
auto=@targeted(other *[human]|myBattlefield) from(*|opponentzones):choice name(This spell costs 1 more) name(This spell costs 1 more) target(*|opponentzones) transforms((,newability[pay[[{1}]] name(pay 1 mana) donothing?fizzle])) oneshot
text=Each other Human you control gets +1/+0 and has ward {1}. (Whenever it becomes the target of a spell or ability an opponent controls, counter it unless that player pays {1}.)
mana={1}{W}
type=Creature
subtype=Human Soldier
power=2
toughness=2
[/card]
[card]
name=Copy Enchantment
auto=may copy target(enchantment|battlefield)
text=You may have Copy Enchantment enter the battlefield as a copy of any enchantment on the battlefield.
@@ -30093,6 +30107,13 @@ power=1
toughness=1
[/card]
[card]
name=Filter Out
auto=all(*[-creature&-land]|battlefield) moveTo(ownerHand)
text=Return all noncreature, nonland permanents to their owners' hands.
mana={1}{U}{U}
type=Instant
[/card]
[card]
name=Fin-Clade Fugitives
auto=cantbeblockedby(creature[power<=2])
autograveyard={4}{G}:name(Activate Encore) name(Activate Encore) moveto(exile) and!(clone with(treason,haste,mustattack))! asSorcery
@@ -38838,7 +38859,7 @@ toughness=2
[/card]
[card]
name=Hardened Scales
auto=@counteradded(1/1) from(creature|mybattlefield) except(Hardened Scales):may counter(1/1) target(creature[counter{1/1.1}]|myBattlefield)
auto=@totalcounteradded(1/1) from(creature|mybattlefield) plus(1):ability$!name(That many plus 1) donothing!$ controller
text=If one or more +1/+1 counters would be placed on a creature you control, that many plus one +1/+1 counters are placed on it instead.
mana={G}
type=Enchantment
@@ -46833,8 +46854,7 @@ auto={T}:name(Add white mana) thisforeach(variable{power}>0) add{W}
auto={T}:name(Add blue mana) thisforeach(variable{power}>0) add{U}
auto={T}:name(Add black mana) thisforeach(variable{power}>0) add{B}
auto={T}:name(Add green mana) thisforeach(variable{power}>0) add{G}
auto=@counteradded(1/1) from(*|myBattlefield) except(Kami of Whispered Hopes):may name(Add counter) all(trigger[from]) counter(1/1)
auto=@counteradded(1/1) from(this):may name(Add counter) all(trigger[from]) counter(1/1)
auto=@totalcounteradded(1/1) from(*|mybattlefield) plus(1):ability$!name(That many plus 1) donothing!$ controller
text=If one or more +1/+1 counters would be put on a permanent you control, that many plus one +1/+1 counters are put on that permanent instead. -- {T}: Add X mana of any one color, where X is Kami of Whispered Hopes's power.
mana={2}{G}
type=Creature
@@ -56739,7 +56759,7 @@ type=Sorcery
[card]
name=Mowu, Loyal Companion
abilities=vigilance,trample
auto=@counteradded(1/1) from(this) except(Mowu, Loyal Companion):may counter(1/1)
auto=@totalcounteradded(1/1) from(this) plus(1):ability$!name(That many plus 1) donothing!$ controller
text=Trample, vigilance -- If one or more +1/+1 counters would be put on Mowu, Loyal Companion, that many plus one +1/+1 counters are put on it instead.
mana={3}{G}
type=Legendary Creature
@@ -62039,8 +62059,7 @@ abilities=cycling
autohand=__CYCLING__({2})
auto={1}{G}{T}:name(Put 1/1 counter on other target) counter(1/1,2) target(other *[artifact;creature]|myBattlefield) asSorcery
auto={1}{G}{T}:name(Put 1/1 counter on this artifact) counter(1/1) asSorcery
auto=@counteradded(1/1) from(*[creature;artifact]|myBattlefield) except(Ozolith, the Shattered Spire):may name(Add counter) all(trigger[from]) counter(1/1)
auto=@counteradded(1/1) from(this):may name(Add counter) all(trigger[from]) counter(1/1)
auto=@totalcounteradded(1/1) from(*[creature;artifact]|mybattlefield) plus(1):ability$!name(That many plus 1) donothing!$ controller
text=If one or more +1/+1 counters would be put on an artifact or creature you control, that many plus one +1/+1 counters are put on it instead. -- {1}{G}, {T}: Put a +1/+1 counter on target artifact or creature you control. Activate only as a sorcery. -- Cycling {2} ({2}, Discard this card: Draw a card.)
mana={1}{G}
type=Legendary Artifact
@@ -81312,6 +81331,15 @@ power=2
toughness=3
[/card]
[card]
name=Spark Rupture
auto=draw:1 controller
auto=lord(planeswalker[counter{0/0.1.Loyatly}]|battlefield) loseabilities
auto=lord(planeswalker[counter{0/0.1.Loyatly}]|battlefield) transforms((Creature,setpower=hascntloyalty,settoughness=hascntloyalty))
text=When Spark Rupture enters the battlefield, draw a card. -- Each planeswalker with one or more loyalty counters on it loses all abilities and is a creature with power and toughness each equal to the number of loyalty counters on it.
mana={2}{W}
type=Enchantment
[/card]
[card]
name=Sparkhunter Masticore
auto=protection from(planeswalker)
auto={1}:damage:1 target(planeswalker)
@@ -98417,6 +98445,19 @@ mana={3}{B}{G}
type=Instant
[/card]
[card]
name=Winding Constrictor
auto=@totalcounteradded(any) from(*[creature;artifact]|mybattlefield) plus(1):ability$!name(That many plus 1) donothing!$ controller
auto=@energizedof(player) plus(1):ability$!name(That many plus 1) donothing!$ controller
auto=@poisonedof(player) plus(1):ability$!name(That many plus 1) donothing!$ controller
auto=@experiencedof(player) plus(1):ability$!name(That many plus 1) donothing!$ controller
text=If one or more counters would be placed on an artifact or creature you control, that many plus one of each of those kinds of counters are placed on that permanent instead. -- If you would get one or more counters, you get that many plus one of each of those kinds of counters instead.
mana={B}{G}
type=Creature
subtype=Snake
power=2
toughness=3
[/card]
[card]
name=Winding Way
auto=choice name(Creature) reveal:4 optionone name(Get Creature) target(creature|reveal) moveto(myhand) and!( all(creature|reveal) moveto(myhand) )! optiononeend optiontwo name(put in grave) target(<1>*|reveal) moveto(mygraveyard) and!( all(*|reveal) moveto(mygraveyard) )! optiontwoend revealend
auto=choice name(Land) reveal:4 optionone name(Get Land) target(land|reveal) moveto(myhand) and!( all(land|reveal) moveto(myhand) )! optiononeend optiontwo name(put in grave) target(<1>*|reveal) moveto(mygraveyard) and!( all(*|reveal) moveto(mygraveyard) )! optiontwoend revealend
@@ -100127,7 +100168,7 @@ modular=1
auto=_DIES_may thisforeach(counter{1/1.1}) counter(1/1) target(creature[artifact])
auto={R}:name(Destroy artifact) target(artifact|myBattlefield)
auto={W}:name(Gains flying) transforms((,newability[flying])) ueot
auto=@counteradded(1/1) from(*[modular]|myBattlefield) except(Zabaz, the Glimmerwasp):may name(Trigger modular) counter(1/1) target(creature[counter{1/1.1}]|myBattlefield)
auto=@totalcounteradded(1/1) from(*[modular]|mybattlefield) plus(1):ability$!name(That many plus 1) donothing!$ controller
text=Modular 1 -- If a modular triggered ability would put one or more +1/+1 counters on a creature you control, that many plus one +1/+1 counters are put on it instead. -- {R}: Destroy target artifact you control. -- {W}: Zabaz, the Glimmerwasp gains flying until end of turn.
mana={1}
type=Legendary Artifact Creature

View File

@@ -1,6 +1,6 @@
#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 programatically so the other comments are removed except for AUTO_DEFINE - Vitty85 20-05-2023
#I sorted this programatically so the other comments are removed except for AUTO_DEFINE - Vitty85 21-05-2023
[card]
name=Abandon Reason
target=<upto:2>creature
@@ -59808,7 +59808,7 @@ toughness=2
[/card]
[card]
name=Jaddi Lifestrider
auto=tap target(<anyamount>creature[-tapped]|mybattlefield) && life:2
auto=may name(Tap creatures) target(<anyamount>creature[-tapped]|mybattlefield) tap && life:2 controller
text=tap any amount of creatures and gain 2 life for each creature tapped this way
mana={4}{G}
type=Creature

View File

@@ -12000,15 +12000,6 @@ power=1
toughness=2
[/card]
[card]
name=Winding Constrictor
text=If one or more counters would be placed on an artifact or creature you control, that many plus one of each of those kinds of counters are placed on that permanent instead. -- If you would get one or more counters, you get that many plus one of each of those kinds of counters instead.
mana={B}{G}
type=Creature
subtype=Snake
power=2
toughness=3
[/card]
[card]
name=Windriddle Palaces
text=Players play with the top card of their libraries revealed. -- You may play the top card of any player's library. -- Whenever you roll {K}, each player puts the top card of his or her library into his or her graveyard.
type=Plane