- saves source card in storedSourceCard for ATransform
- adds support for WParsedInt in pay as "pay[[{value:WParsedInt}]]":
name=Spell Rupture
target=*|stack
auto=if cantargetcard(*|opponentstack) then transforms((,newability[pay[[{value:power:highest:creature:opponentbattlefield}]] name(pay {value} mana) donothing?fizzle])) forever
text=Counter target spell unless its controller pays {X}, where X is the greatest power among creatures you control.
mana={1}{U}
type=Instant
- adds support for {x} in *some* “pay” abilities (Syncopate):
name=Syncopate
target=*|stack
auto=transforms((,newability[pay[[{x}]] name(pay {value} mana) donothing?fizzleto(exile)])) forever
text=Counter target spell unless its controller pays {X}. If that spell is countered this way, exile it instead of putting it into its owner's graveyard.
mana={X}{U}
type=Instant
- support of "name(pay {value} mana)" in pay abilities to show actual number to pay (see example above)
Here is a small example inspired from SDLmain.c:
g_launcher = new JGameLauncher();
InitGame();
MTGCollection()->loadFolder("sets/primitives/");
MTGCollection()->loadFolder("sets/", "_cards.dat");
options.reloadProfile();
TestSuite testSuite("test/_tests.txt");
int result = testSuite.run();
DestroyGame();
delete g_launcher;
return result;
Get rid of common code
Better naming of zone (where we put spell after countering)
More generic syntax: fizzleto(X) where X in [hand, exile, librarytop]
which will give more flexibility later
Edge of autumn
Mirrorworks
Clone of the card now have the same image as original
Issue with cloning and trigger "nontoken * enters"
Blitzkrig rules
Hermit druid rules
Wildfire
Fixed:
Stitch in Time -- missing flipend at end
Raging Ravine -- can't have trigger inside second transofrm
Prey Upon -- can be cast only on opponents creature
Mesmeric Fiend -- target(player) --> target(opponent)
Caribou Range -- ability should be on ench