Added Y22 set, improved Android downloader for Y22 set, added new restriction "librarycast" to check if a card has been casted from library, added new keyword "startingplayer" to retrieve who was the starting player, added a new ability "nodamageremoved" to avoid damage is removed from a card (e.g. "Patient Zero"), fixed a possbile crash when using "andability" option in "moverandom" ability (e.g. cards with seek abilites), added "myname" option to conjure "ability" to refer the orginal source card name (e.g. "Clone Crafter"), added new zone definitions "myhandlibrary" and "opponenthandlibrary" to refer same time hand and library zone of a player, added new ability "nonight" to avoid it can become night (e.g. "Angel of Eternal Dawn"), improved all cards with "it becomes night" ability.

This commit is contained in:
Vittorio Alfieri
2021-12-20 18:55:54 +01:00
parent 7fa03e620d
commit fa7a0daae1
12 changed files with 522 additions and 56 deletions
@@ -265,7 +265,7 @@ subtype=Arlinn
name=Arlinn, the Moon's Fury
abilities=nightbound
backside=Arlinn, the Pack's Hope
auto=if type(*[day;night]|battlefield)~equalto~0 then name(It becomes night) activate castcard(noevent named!:Night:!)
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=if compare(hascntloyalty)~equalto~0 then counter(0/0,4,loyalty)
auto={C(0/0,2,Loyalty)}:name(+2: Add red and green mana) add{R}{G}
auto={C(0/0,0,Loyalty)}:name(0: Becomes werewolf) transforms((Creature Werewolf,setpower=5,settoughness=5,newability[trample],newability[indestructible],newability[haste])) ueot
@@ -998,6 +998,31 @@ type=Legendary Planeswalker
subtype=Garruk
[/card]
[card]
name=Garruk, Wrath of the Wilds
auto=counter(0/0,3,loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Creature perpetually gets 1/1) target(creature|myhand) transforms((,newability[counter(1/1.1.PerpetualPT) notrg],newability[changecost(colorless:-1) forcedalive])) forever
auto={C(0/0,-1,Loyalty)}:name(-1: Draft Mosscoat Goriak) conjure cards(Mosscoat Goriak) zone(myreveal) and!( moveto(myBattlefield) )!
auto={C(0/0,-1,Loyalty)}:name(-1: Draft Sylvan Brushstrider) conjure cards(Sylvan Brushstrider) zone(myreveal) and!( moveto(myBattlefield) )!
auto={C(0/0,-1,Loyalty)}:name(-1: Draft Murasa Rootgrazer) conjure cards(Murasa Rootgrazer) zone(myreveal) and!( moveto(myBattlefield) )!
auto={C(0/0,-1,Loyalty)}:name(-1: Draft Dire Wolf Prowler) conjure cards(Dire Wolf Prowler) zone(myreveal) and!( moveto(myBattlefield) )!
auto={C(0/0,-1,Loyalty)}:name(-1: Draft Ferocious Pup) conjure cards(Ferocious Pup) zone(myreveal) and!( moveto(myBattlefield) )!
auto={C(0/0,-1,Loyalty)}:name(-1: Draft Pestilent Wolf) conjure cards(Pestilent Wolf) zone(myreveal) and!( moveto(myBattlefield) )!
auto={C(0/0,-1,Loyalty)}:name(-1: Draft Garruk's Uprising) conjure cards(Garruk's Uprising) zone(myreveal) and!( moveto(myBattlefield) )!
auto={C(0/0,-1,Loyalty)}:name(-1: Draft Dawntreader Elk) conjure cards(Dawntreader Elk) zone(myreveal) and!( moveto(myBattlefield) )!
auto={C(0/0,-1,Loyalty)}:name(-1: Draft Nessian Hornbeetle) conjure cards(Nessian Hornbeetle) zone(myreveal) and!( moveto(myBattlefield) )!
auto={C(0/0,-1,Loyalty)}:name(-1: Draft Territorial Scythecat) conjure cards(Territorial Scythecat) zone(myreveal) and!( moveto(myBattlefield) )!
auto={C(0/0,-1,Loyalty)}:name(-1: Draft Trufflesnout) conjure cards(Trufflesnout) zone(myreveal) and!( moveto(myBattlefield) )!
auto={C(0/0,-1,Loyalty)}:name(-1: Draft Wary Okapi) conjure cards(Wary Okapi) zone(myreveal) and!( moveto(myBattlefield) )!
auto={C(0/0,-1,Loyalty)}:name(-1: Draft Scurrid Colony) conjure cards(Scurrid Colony) zone(myreveal) and!( moveto(myBattlefield) )!
auto={C(0/0,-1,Loyalty)}:name(-1: Draft Barkhide Troll) conjure cards(Barkhide Troll) zone(myreveal) and!( moveto(myBattlefield) )!
auto={C(0/0,-1,Loyalty)}:name(-1: Draft Underdark Basilisk) conjure cards(Underdark Basilisk) zone(myreveal) and!( moveto(myBattlefield) )!
auto={C(0/0,-5,Loyalty)}:name(-3: Your creatures get 3/3) all(creature|myBattlefield) transforms((,newability[3/3],newability[trample])) ueot
text=+1: Choose a creature card in your hand. it perpetually gets +1/+1 and perpetually gains "This spell costs {1} less to cast." -- 1: Draft a card from Garruk, Wrath of the Wild's spellbook and put it onto the battlefield. -- 5: Until end of turn, creatures you control get +3/+3 and gain trample.
mana={2}{G}{G}
type=Legendary Planeswalker
subtype=Garruk
[/card]
[card]
name=Garruk Wildspeaker
auto=counter(0/0,3,loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: untap two lands) untap target(<2>land)
@@ -2971,15 +2996,60 @@ subtype=Tibalt
[card]
name=Tibalt, the Fiend-Blooded
auto=counter(0/0,2,Loyalty)
auto={counter(0/0,1,Loyalty)}:name(+1: Draw and discard) draw:1 controller && discard:1 controller
auto={counter(0/0,-4,Loyalty)}:name(-4: Deal damage to player) target(player) damage:type:*:targetedpersonshand
auto={counter(0/0,-6,Loyalty)}:name(-6: Gain control of creatures) all(creature|battlefield) moveTo(mybattlefield) and!( transforms((,newability[untap],newability[haste],newability[phaseaction[endofturn once sourceinplay] moveTo(ownerbattlefield)])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Draw and discard) draw:1 controller && discard:1 controller
auto={C(0/0,-4,Loyalty)}:name(-4: Deal damage to player) target(player) damage:type:*:targetedpersonshand
auto={C(0/0,-6,Loyalty)}:name(-6: Gain control of creatures) all(creature|battlefield) moveTo(mybattlefield) and!( transforms((,newability[untap],newability[haste],newability[phaseaction[endofturn once sourceinplay] moveTo(ownerbattlefield)])) ueot )!
text=+1: Draw a card, then discard a card at random. -- -4: Tibalt, the Fiend-Blooded deals damage equal to the number of cards in target player's hand to that player. -- -6: Gain control of all creatures until end of turn. Untap them. They gain haste until end of turn.
mana={R}{R}
type=Legendary Planeswalker
subtype=Tibalt
[/card]
[card]
name=Tibalt, Wicked Tormentor
auto=counter(0/0,3,Loyalty)
auto={C(0/0,1,Loyalty)}:name(+1: Draft Chained Brute) conjure cards(Chained Brute) zone(myexile) and!( transforms((,newability[canplayfromexile],newability[add{R}{R}])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Draft Charmbreaker Devils) conjure cards(Charmbreaker Devils) zone(myexile) and!( transforms((,newability[canplayfromexile],newability[add{R}{R}])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Draft Festival Crasher) conjure cards(Festival Crasher) zone(myexile) and!( transforms((,newability[canplayfromexile],newability[add{R}{R}])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Draft Forge Devil) conjure cards(Forge Devil) zone(myexile) and!( transforms((,newability[canplayfromexile],newability[add{R}{R}])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Draft Frenzied Devils) conjure cards(Frenzied Devils) zone(myexile) and!( transforms((,newability[canplayfromexile],newability[add{R}{R}])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Draft Havoc Jester) conjure cards(Havoc Jester) zone(myexile) and!( transforms((,newability[canplayfromexile],newability[add{R}{R}])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Draft Hellrider) conjure cards(Hellrider) zone(myexile) and!( transforms((,newability[canplayfromexile],newability[add{R}{R}])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Draft Hobblefiend) conjure cards(Hobblefiend) zone(myexile) and!( transforms((,newability[canplayfromexile],newability[add{R}{R}])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Draft Pitchburn Devils) conjure cards(Pitchburn Devils) zone(myexile) and!( transforms((,newability[canplayfromexile],newability[add{R}{R}])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Draft Sin Prodder) conjure cards(Sin Prodder) zone(myexile) and!( transforms((,newability[canplayfromexile],newability[add{R}{R}])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Draft Spiteful Prankster) conjure cards(Spiteful Prankster) zone(myexile) and!( transforms((,newability[canplayfromexile],newability[add{R}{R}])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Draft Tibalt's rager) conjure cards(Tibalt's rager) zone(myexile) and!( transforms((,newability[canplayfromexile],newability[add{R}{R}])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Draft Torch Fiend) conjure cards(Torch Fiend) zone(myexile) and!( transforms((,newability[canplayfromexile],newability[add{R}{R}])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Draft Brimstone Vandal) conjure cards(Brimstone Vandal) zone(myexile) and!( transforms((,newability[canplayfromexile],newability[add{R}{R}])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Draft Devil's Play) conjure cards(Devil's Play) zone(myexile) and!( transforms((,newability[canplayfromexile],newability[add{R}{R}])) ueot )!
auto={C(0/0,1,Loyalty)}:name(+1: Damage opponent creature or planeswalker) target(*[creature;planeswalker]|opponentbattlefield) transforms((,newability[choice name(Damage target) damage:3],newability[choice name(Damage controller) damage:3 controller && ability$!may name(Discard and draw) name(Discard and draw) target(*|myhand) reject and!( draw:1 controller )! !$ opponent])) oneshot
auto={C(0/0,1,Loyalty)}:name(+1: Damage your creature or planeswalker) target(*[creature;planeswalker]|mybattlefield) transforms((,newability[choice name(Damage target) damage:3],newability[choice name(Damage controller) damage:3 controller && ability$!may name(Discard and draw) name(Discard and draw) target(*|myhand) reject and!( draw:1 controller )! !$ controller])) oneshot
auto={C(0/0,-1,Loyalty)}:name(-1: Create 1 devil) token(Devil,Creature Devil,1/1,red) and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-2,Loyalty)}:name(-2: Create 2 devils) token(Devil,Creature Devil,1/1,red)*2 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-3,Loyalty)}:name(-3: Create 3 devils) token(Devil,Creature Devil,1/1,red)*3 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-4,Loyalty)}:name(-4: Create 4 devils) token(Devil,Creature Devil,1/1,red)*4 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-5,Loyalty)}:name(-5: Create 5 devils) token(Devil,Creature Devil,1/1,red)*5 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-6,Loyalty)}:name(-6: Create 6 devils) token(Devil,Creature Devil,1/1,red)*6 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-7,Loyalty)}:name(-7: Create 7 devils) token(Devil,Creature Devil,1/1,red)*7 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-8,Loyalty)}:name(-8: Create 8 devils) token(Devil,Creature Devil,1/1,red)*8 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-9,Loyalty)}:name(-9: Create 9 devils) token(Devil,Creature Devil,1/1,red)*9 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-10,Loyalty)}:name(-10: Create 10 devils) token(Devil,Creature Devil,1/1,red)*10 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-11,Loyalty)}:name(-11: Create 11 devils) token(Devil,Creature Devil,1/1,red)*11 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-12,Loyalty)}:name(-12: Create 12 devils) token(Devil,Creature Devil,1/1,red)*12 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-13,Loyalty)}:name(-13: Create 13 devils) token(Devil,Creature Devil,1/1,red)*13 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-14,Loyalty)}:name(-14: Create 14 devils) token(Devil,Creature Devil,1/1,red)*14 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-15,Loyalty)}:name(-15: Create 15 devils) token(Devil,Creature Devil,1/1,red)*15 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-16,Loyalty)}:name(-16: Create 16 devils) token(Devil,Creature Devil,1/1,red)*16 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-17,Loyalty)}:name(-17: Create 17 devils) token(Devil,Creature Devil,1/1,red)*17 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-18,Loyalty)}:name(-18: Create 18 devils) token(Devil,Creature Devil,1/1,red)*18 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-19,Loyalty)}:name(-19: Create 19 devils) token(Devil,Creature Devil,1/1,red)*19 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
auto={C(0/0,-20,Loyalty)}:name(-20: Create 20 devils) token(Devil,Creature Devil,1/1,red)*20 and!( transforms((,newability[@movedto(this|graveyard) from(battlefield):name(Deal 1 damage) target(player^creature^planeswalker)])) forever )!
text=+1: Add {R}{R}. Draft a card from Tibalt, Wicked Tormenter's spellbook, then exile it. Until end of turn, you may cast that card. -- +1: Tibalt, Wicked Tormenter deals 3 damage to target creature or planeswalker unless its controller has Tibalt deal 3 damage to them. If they do, you may discard a card. If you do, draw card. -- X: Create X 1/1 red Devil creature tokens with "When this creature dies, it deals 1 damage to any target."
mana={3}{R}{R}
type=Legendary Planeswalker
subtype=Tibalt
[/card]
[card]
name=Tyvar Kell
auto=counter(0/0,3,Loyalty)
auto=lord(elf|mybattlefield) transforms((,newability[{T}:add{B}]))