diff --git a/projects/mtg/bin/Res/sets/primitives/mtg.txt b/projects/mtg/bin/Res/sets/primitives/mtg.txt index 938333c51..de455f3af 100644 --- a/projects/mtg/bin/Res/sets/primitives/mtg.txt +++ b/projects/mtg/bin/Res/sets/primitives/mtg.txt @@ -8002,7 +8002,7 @@ toughness=2 [/card] [card] name=Blazing Shoal -other={R}{R}{E(other *[red]|myhand)} name(Exile Red Card from Hand) +other={E(other *[red]|myhand)} name(Exile Red Card from Hand) target=creature auto=X/0 auto=alternative storedmanacost/0 @@ -58422,6 +58422,17 @@ power=3 toughness=4 [/card] [card] +name=Nim Devourer +auto=type:artifact:mybattlefield/0 nonstatic +autograveyard={B}{B}:moveto(ownerbattlefield) and!( sacrifice notatarget(creature|mybattlefield) )! myUpkeepOnly +text=Nim Devourer gets +1/+0 for each artifact you control. -- {B}{B}: Return Nim Devourer from your graveyard to the battlefield, then sacrifice a creature. Activate this ability only during your upkeep. +mana={3}{B}{B} +type=Creature +subtype=Zombie +power=4 +toughness=1 +[/card] +[card] name=Nim Grotesque auto=foreach(artifact|myBattlefield) 1/0 text=Nim Grotesque gets +1/+0 for each artifact you control. @@ -58935,6 +58946,16 @@ mana={G}{G} type=Instant [/card] [card] +name=Nourishing Shoal +other={E(other *[green]|myhand)} name(Exile Green Card from Hand) +auto=life:X +auto=alternative life:storedmanacost +text=You may exile a green card with converted mana cost X from your hand rather than pay Nourishing Shoal's mana cost. -- You gain X life. +mana={X}{G}{G} +type=Instant +subtype=Arcane +[/card] +[card] name=Nova Chaser abilities=trample auto=aslongas(other elemental|mybattlefield) choice notatarget(other elemental|mybattlefield) (blink)forsrc oneshot @@ -59166,6 +59187,16 @@ type=Artifact subtype=Equipment [/card] [card] +name=Oak Street Innkeeper +auto=this(variable{opponentturn}) lord(creature[tapped]|mybattlefield) opponentshroud +text=As long as it's not your turn, tapped creatures you control have hexproof. +mana={2}{G} +type=Creature +subtype=Elf +power=1 +toughness=2 +[/card] +[card] name=Oakenform target=creature auto=3/3 @@ -59924,6 +59955,13 @@ mana={4}{W} type=Enchantment [/card] [card] +name=Opal Avenger +auto=this(variable{lifetotal}<11)while transforms((removetypes)) forever && transforms((Soldier Creature,setpower=3,settoughness=5)) forever +text=When you have 10 or less life, if Opal Avenger is an enchantment, Opal Avenger becomes a 3/5 Soldier creature. +mana={2}{W} +type=Enchantment +[/card] +[card] name=Opal Caryatid auto=@movedto(creature|opponentstack) once:transforms((removetypes)) forever && transforms((Soldier Creature,setpower=2,settoughness=2)) forever text=When an opponent casts a creature spell, if Opal Caryatid is an enchantment, Opal Caryatid becomes a 2/2 Soldier creature. @@ -60514,11 +60552,10 @@ power=1 toughness=3 [/card] [card] -name=Oriss Samite Guardian -auto={T}:prevent:999 target(creature) -auto={discard(oriss samite guardian|myhand)}:name(opponent can't cast spells and his creatures cannot attack ueot) maxCast(*)0 opponent ueot && cantattack all(creature|opponentBattlefield) -auto={discard(oriss samite guardian|myhand)}:name(you can't cast spells and your creatures cannot attack ueot) maxCast(*)0 controller ueot && cantattack all(creature|myBattlefield) -text={T}: Prevent all damage that would be dealt to target creature this turn. -- Grandeur - Discard another card named Oriss, Samite Guardian: Target player can't cast spells this turn, and creatures that player controls can't attack this turn. +name=Oriss, Samite Guardian +auto={T}:name(prevent all damage) target(creature) transforms((,newability[preventalldamage to(this)])) ueot +auto={discard(*[share!name!]|myhand)}:target(player) maxCast(*)0 ueot && all(creature|targetedpersonsbattlefield) cantattack ueot +text={T}: Prevent all damage that would be dealt to target creature this turn. Grandeur — Discard another card named Oriss, Samite Guardian: Target player can't cast spells this turn, and creatures that player controls can't attack this turn. mana={1}{W}{W} type=Legendary Creature subtype=Human Cleric @@ -61041,6 +61078,13 @@ power=2 toughness=2 [/card] [card] +name=Pain Magnification +auto=@damaged(opponent) restriction{compare(thatmuch)~morethan~2}:ability$!reject notatarget(*|myhand)!$ opponent +text=Whenever an opponent is dealt 3 or more damage by a single source, that player discards a card. +mana={1}{B}{R} +type=Enchantment +[/card] +[card] name=Painbringer auto=aslongas(*|mygraveyard) {T}{E(*|mygraveyard)}:-1/-1 target(creature) auto=aslongas(*|mygraveyard) {T}{E(*|mygraveyard)}{E(*|mygraveyard)}:-2/-2 target(creature) >1 diff --git a/projects/mtg/bin/Res/test/Nim_Devourer.txt b/projects/mtg/bin/Res/test/Nim_Devourer.txt new file mode 100644 index 000000000..bad6136c8 --- /dev/null +++ b/projects/mtg/bin/Res/test/Nim_Devourer.txt @@ -0,0 +1,23 @@ +#Testing Nim Devourer upkeep ability, move to play then sacrifice a creature. +[INIT] +UPKEEP +[PLAYER1] +graveyard:Nim Devourer +inplay:Tundra Wolves +manapool:{B}{B} +[PLAYER2] +life:20 +[DO] +Nim Devourer +choice 0 +Tundra Wolves +next +next +[ASSERT] +FIRSTMAIN +[PLAYER1] +inplay:Nim Devourer +graveyard:Tundra Wolves +[PLAYER2] +life:20 +[END] diff --git a/projects/mtg/bin/Res/test/Oak_Street_Innkeeper.txt b/projects/mtg/bin/Res/test/Oak_Street_Innkeeper.txt new file mode 100644 index 000000000..280682e26 --- /dev/null +++ b/projects/mtg/bin/Res/test/Oak_Street_Innkeeper.txt @@ -0,0 +1,29 @@ +#Testing Oak Street Innkeeper hexproof during opponent turn +[INIT] +combatattackers +[PLAYER1] +inplay:Oak Street Innkeeper +[PLAYER2] +hand:Lightning Bolt +inplay:Mountain +life:20 +[DO] +Oak Street Innkeeper +eot +#next turn opponent +Mountain +Lightning Bolt +Oak Street Innkeeper +#since i cant target because of hexproof, i choose p1 +p1 +eot +[ASSERT] +untap +[PLAYER1] +inplay:Oak Street Innkeeper +life:17 +[PLAYER2] +inplay:Mountain +graveyard:Lightning Bolt +life:19 +[END] diff --git a/projects/mtg/bin/Res/test/Oriss_Samite_Guardian.txt b/projects/mtg/bin/Res/test/Oriss_Samite_Guardian.txt new file mode 100644 index 000000000..facc6ee10 --- /dev/null +++ b/projects/mtg/bin/Res/test/Oriss_Samite_Guardian.txt @@ -0,0 +1,26 @@ +#Testing Oriss Samite Guardian preventalldamage to(this) +[INIT] +combatattackers +[PLAYER1] +hand:Lightning Bolt +inplay:Mountain +[PLAYER2] +inplay:136210 +[DO] +Mountain +Lightning Bolt +136210 +no +yes +136210 +choice 0 +136210 +eot +[ASSERT] +untap +[PLAYER1] +inplay:Mountain +graveyard:Lightning Bolt +[PLAYER2] +inplay:136210 +[END] diff --git a/projects/mtg/bin/Res/test/Pain_Magnification.txt b/projects/mtg/bin/Res/test/Pain_Magnification.txt new file mode 100644 index 000000000..3146e01ca --- /dev/null +++ b/projects/mtg/bin/Res/test/Pain_Magnification.txt @@ -0,0 +1,33 @@ +#Testing Pain Magnification - more than 2 damage must comes from a single source +#in this case Lightning Bolt, so the opponent must discard 1 card only +[INIT] +combatattackers +[PLAYER1] +hand:Lightning Bolt +inplay:Pain Magnification,Mountain,Grizzly Bears,Savannah Lions +[PLAYER2] +hand:Plains,Forest +life:20 +[DO] +Savannah Lions +Grizzly Bears +next +next +next +Mountain +Lightning Bolt +p2 +choice 0 +Forest +next +eot +[ASSERT] +untap +[PLAYER1] +inplay:Pain Magnification,Mountain,Grizzly Bears,Savannah Lions +graveyard:Lightning Bolt +[PLAYER2] +hand:* +graveyard:* +life:13 +[END] diff --git a/projects/mtg/bin/Res/test/_tests.txt b/projects/mtg/bin/Res/test/_tests.txt index 42e5a1042..22c18bfba 100644 --- a/projects/mtg/bin/Res/test/_tests.txt +++ b/projects/mtg/bin/Res/test/_tests.txt @@ -476,9 +476,11 @@ necrogenesis.txt Nevinyrrals_Disk.txt Nevinyrrals_Disk2.txt nightmare.txt +Nim_Devourer.txt northern_paladin.txt northern_paladin2.txt Nyxathid.txt +Oak_Street_Innkeeper.txt ondu_cleric.txt OneDozenEyes.txt Oracle_of_Nectars.txt @@ -486,9 +488,11 @@ orcish_artillery.txt orcish_lumberjack.txt orims_chant_i595.txt orims_chant2.txt +Oriss_Samite_Guardian.txt overrun.txt ovinize.txt ovinize2.txt +Pain_Magnification.txt paradise_mantle.txt paralysis.txt paralysis2.txt