Merge branch 'WagicProject:master' into circleci-project-setup
This commit is contained in:
@@ -110,6 +110,7 @@ public class SDLActivity extends Activity implements OnKeyListener {
|
||||
public static final String kSaveDataPathPreference = "StorageDataLocation";
|
||||
public static final String kWagicDataStorageOptionsKey = "dataStorageOptions";
|
||||
public static final int kStorageDataOptionsMenuId = 2000;
|
||||
public static final int kdownloadResOptionsMenuId = 4000;
|
||||
public static final int kOtherOptionsMenuId = 3000;
|
||||
|
||||
static {
|
||||
@@ -170,6 +171,7 @@ public class SDLActivity extends Activity implements OnKeyListener {
|
||||
MenuItem downloader;
|
||||
MenuItem about;
|
||||
MenuItem storage;
|
||||
MenuItem resource;
|
||||
|
||||
// Handler for the messages
|
||||
Handler commandHandler = new Handler() {
|
||||
@@ -951,6 +953,9 @@ public class SDLActivity extends Activity implements OnKeyListener {
|
||||
about = menu.add(Menu.NONE, 4, 4, "About");
|
||||
storage = settingsMenu.add(kStorageDataOptionsMenuId,
|
||||
kStorageDataOptionsMenuId, Menu.NONE, "Storage Data Options");
|
||||
resource = settingsMenu.add(kdownloadResOptionsMenuId,
|
||||
kdownloadResOptionsMenuId, Menu.NONE, "Download Core & Quit");
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -966,6 +971,10 @@ public class SDLActivity extends Activity implements OnKeyListener {
|
||||
|
||||
if (itemId == kStorageDataOptionsMenuId) {
|
||||
displayStorageOptions();
|
||||
} else if (itemId == kdownloadResOptionsMenuId) {
|
||||
File oldRes = new File(getSystemStorageLocation() + RES_FILENAME);
|
||||
oldRes.delete();
|
||||
startDownload();
|
||||
} else if (itemId == 2) {
|
||||
importDeckOptions();
|
||||
} else if (itemId == 3) {
|
||||
@@ -1000,7 +1009,7 @@ public class SDLActivity extends Activity implements OnKeyListener {
|
||||
public void showSettingsSubMenu() {
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(this);
|
||||
builder.setTitle("Settings Menu");
|
||||
String[] choices = { "Storage Data Options" };
|
||||
String[] choices = { "Storage Data Options", "Download Core & Quit" };
|
||||
builder.setItems(choices,
|
||||
new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
@@ -1009,6 +1018,9 @@ public class SDLActivity extends Activity implements OnKeyListener {
|
||||
case 0:
|
||||
onOptionsItemSelected(storage);
|
||||
break;
|
||||
case 1:
|
||||
onOptionsItemSelected(resource);
|
||||
break;
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -1122,13 +1134,41 @@ public class SDLActivity extends Activity implements OnKeyListener {
|
||||
prepareOptionMenu(null);
|
||||
}
|
||||
|
||||
public void forceResDownload(final File oldRes) {
|
||||
AlertDialog.Builder resChooser = new AlertDialog.Builder(this);
|
||||
final SDLActivity parent = this;
|
||||
|
||||
resChooser.setTitle("Do you want to download latest core file?");
|
||||
|
||||
resChooser.setPositiveButton("Yes",
|
||||
new DialogInterface.OnClickListener() {
|
||||
public void onClick(DialogInterface dialog, int which) {
|
||||
FrameLayout _videoLayout = new FrameLayout(parent);
|
||||
setContentView(_videoLayout,
|
||||
new LayoutParams(LayoutParams.FILL_PARENT,
|
||||
LayoutParams.FILL_PARENT));
|
||||
oldRes.delete();
|
||||
startDownload();
|
||||
}
|
||||
});
|
||||
|
||||
resChooser.setNegativeButton("No",
|
||||
new DialogInterface.OnClickListener() {
|
||||
public void onClick(DialogInterface dialog, int which) {
|
||||
mainDisplay();
|
||||
}
|
||||
});
|
||||
|
||||
resChooser.create().show();
|
||||
}
|
||||
|
||||
public void initializeGame() {
|
||||
String coreFileLocation = getSystemStorageLocation() + RES_FILENAME;
|
||||
|
||||
File file = new File(coreFileLocation);
|
||||
|
||||
if (file.exists()) {
|
||||
mainDisplay();
|
||||
forceResDownload(file);
|
||||
} else {
|
||||
FrameLayout _videoLayout = new FrameLayout(this);
|
||||
setContentView(_videoLayout,
|
||||
|
||||
@@ -54829,6 +54829,10 @@ AFR;null;https://cards.scryfall.io/large/front/1/a/1accce8c-7ca4-4cc5-bd8a-26b19
|
||||
AFR;null;https://cards.scryfall.io/large/front/f/3/f3febf51-6f40-478c-8b71-c529be420ff7.jpg
|
||||
AFR;null;https://cards.scryfall.io/large/front/c/1/c13045ec-27e4-497a-bbc4-134cf46b7b89.jpg
|
||||
AFR;null;https://cards.scryfall.io/large/front/e/a/ea414698-5f87-461b-b1b2-b317b929280f.jpg
|
||||
CLB;57018400t;https://cards.scryfall.io/large/back/2/c/2c65185b-6cf0-451d-985e-56aa45d9a57d.jpg
|
||||
CLB;57018401t;https://cards.scryfall.io/large/front/2/c/2c65185b-6cf0-451d-985e-56aa45d9a57d.jpg
|
||||
CLB;57018400;https://cards.scryfall.io/large/back/2/c/2c65185b-6cf0-451d-985e-56aa45d9a57d.jpg
|
||||
CLB;57018401;https://cards.scryfall.io/large/front/2/c/2c65185b-6cf0-451d-985e-56aa45d9a57d.jpg
|
||||
CLB;570184;https://cards.scryfall.io/large/front/2/5/25564fba-5765-457b-8dd3-f26b877221b8.jpg
|
||||
CLB;562885;https://cards.scryfall.io/large/front/3/9/396f9198-67b6-45d8-91b4-dc853bff9623.jpg
|
||||
CLB;562886;https://cards.scryfall.io/large/front/4/2/421395b1-2694-42fd-bb90-0007e78adefc.jpg
|
||||
@@ -65837,7 +65841,6 @@ MOC;612494;https://cards.scryfall.io/large/front/d/5/d560c996-ef80-4117-8642-a63
|
||||
MOC;612495;https://cards.scryfall.io/large/front/7/1/7165a9ac-3f44-4d14-93bb-d4d4970ab41b.jpg
|
||||
MOC;612496;https://cards.scryfall.io/large/front/3/2/323c8de1-f09b-45c5-8942-81cb3a09c803.jpg
|
||||
MOC;612497;https://cards.scryfall.io/large/front/4/6/4676c019-886c-4b0d-9849-c044c0e03da3.jpg
|
||||
MOC;612497;https://cards.scryfall.io/large/front/4/6/4676c019-886c-4b0d-9849-c044c0e03da3.jpg
|
||||
MOC;612498;https://cards.scryfall.io/large/front/5/4/5446e1ba-c745-45b2-ad05-b22abf04daec.jpg
|
||||
MOC;612499;https://cards.scryfall.io/large/front/b/7/b7bb405a-3643-4b3a-95d2-ea7ac9c6a2ff.jpg
|
||||
MOC;612500;https://cards.scryfall.io/large/front/7/e/7e7d463b-e74e-4ebe-9f92-02ccdeadbf96.jpg
|
||||
@@ -65847,11 +65850,9 @@ MOC;612503;https://cards.scryfall.io/large/front/e/6/e60aaa4e-267c-4909-8abe-414
|
||||
MOC;612504;https://cards.scryfall.io/large/front/f/c/fce002dc-5fb5-465b-935e-042121f1119d.jpg
|
||||
MOC;612505;https://cards.scryfall.io/large/front/f/a/fad2b56b-bedf-4d8e-8e0c-733946e0731b.jpg
|
||||
MOC;612506;https://cards.scryfall.io/large/front/8/0/80fffad3-2486-4350-8dff-54a215ebfc28.jpg
|
||||
MOC;612506;https://cards.scryfall.io/large/front/8/0/80fffad3-2486-4350-8dff-54a215ebfc28.jpg
|
||||
MOC;612507;https://cards.scryfall.io/large/front/2/2/221c82a2-b558-4c3a-b7ad-4452ef8e9067.jpg
|
||||
MOC;612508;https://cards.scryfall.io/large/front/3/6/36b1e963-9b8c-4103-abbc-580866f144e7.jpg
|
||||
MOC;612509;https://cards.scryfall.io/large/front/8/4/84c63c27-6095-4fbc-9064-0ef602e1ced8.jpg
|
||||
MOC;612509;https://cards.scryfall.io/large/front/8/4/84c63c27-6095-4fbc-9064-0ef602e1ced8.jpg
|
||||
MOC;612510;https://cards.scryfall.io/large/front/2/8/281ad1ca-307b-4382-865a-bd2c16ca608f.jpg
|
||||
MOC;612511;https://cards.scryfall.io/large/front/8/6/86f6f3e9-b594-49da-b0af-75a672590da1.jpg
|
||||
MOC;612512;https://cards.scryfall.io/large/front/4/3/43752240-10b1-4920-bb89-e4a4a1e78219.jpg
|
||||
@@ -65859,7 +65860,6 @@ MOC;612513;https://cards.scryfall.io/large/front/a/9/a9861fb3-6722-43b8-bf0a-af6
|
||||
MOC;612514;https://cards.scryfall.io/large/front/0/9/09bb74d7-dd61-4cce-b88c-ee4d656a97f4.jpg
|
||||
MOC;612515;https://cards.scryfall.io/large/front/b/4/b40aa855-bfa9-4dc8-ab9e-b78385185b81.jpg
|
||||
MOC;612516;https://cards.scryfall.io/large/front/1/c/1cd477f5-53e9-446a-b717-5796d87672ba.jpg
|
||||
MOC;612516;https://cards.scryfall.io/large/front/1/c/1cd477f5-53e9-446a-b717-5796d87672ba.jpg
|
||||
MOC;612517;https://cards.scryfall.io/large/front/0/3/03f16bbd-00d6-43ed-9a11-ebe7fc65933a.jpg
|
||||
MOC;612518;https://cards.scryfall.io/large/front/5/4/54b5c19e-f50a-4cd1-bf42-e545da7a6b0f.jpg
|
||||
MOC;612519;https://cards.scryfall.io/large/front/3/1/31825ceb-d795-4ad7-81d8-77ab34c272f9.jpg
|
||||
@@ -65920,7 +65920,6 @@ MOC;612573;https://cards.scryfall.io/large/front/c/0/c0ee001b-6ddb-478e-a407-58b
|
||||
MOC;612574;https://cards.scryfall.io/large/front/a/9/a9c61721-3f80-44e6-8a75-08ff609e4470.jpg
|
||||
MOC;612575;https://cards.scryfall.io/large/front/f/4/f402e6d9-8c72-4b31-bec5-4a1b3ffb39ae.jpg
|
||||
MOC;612576;https://cards.scryfall.io/large/front/8/2/82202ac9-7281-4d12-af4e-a8147cc38296.jpg
|
||||
MOC;612576;https://cards.scryfall.io/large/front/8/2/82202ac9-7281-4d12-af4e-a8147cc38296.jpg
|
||||
MOC;612577;https://cards.scryfall.io/large/front/2/9/29ab3610-342d-4a67-9be8-a7efb89a4b46.jpg
|
||||
MOC;612578;https://cards.scryfall.io/large/front/9/f/9f299f1e-2694-44e6-aad4-1f29c2ee5553.jpg
|
||||
MOC;612579;https://cards.scryfall.io/large/front/1/4/1438d850-1e08-4d75-a79c-d6a4738d5a67.jpg
|
||||
@@ -65932,12 +65931,10 @@ MOC;612584;https://cards.scryfall.io/large/front/e/8/e8c8f35e-faa8-4537-b320-c84
|
||||
MOC;612585;https://cards.scryfall.io/large/front/9/d/9dbb8991-1b2c-4045-be1f-54286027d4a1.jpg
|
||||
MOC;612586;https://cards.scryfall.io/large/front/7/6/76f344e7-a3a9-44e1-832b-f51dd4ad02f2.jpg
|
||||
MOC;612587;https://cards.scryfall.io/large/front/b/f/bf909dbb-6e49-4556-a37a-2738889915d1.jpg
|
||||
MOC;612587;https://cards.scryfall.io/large/front/b/f/bf909dbb-6e49-4556-a37a-2738889915d1.jpg
|
||||
MOC;612588;https://cards.scryfall.io/large/front/1/c/1cd2026d-140c-4ad2-8589-9e5e7c23f207.jpg
|
||||
MOC;612589;https://cards.scryfall.io/large/front/b/8/b8a702e4-0d5c-428b-b490-64fe6701f6d4.jpg
|
||||
MOC;612590;https://cards.scryfall.io/large/front/1/d/1dea34d8-c68f-41b5-8476-fd6128d69576.jpg
|
||||
MOC;612591;https://cards.scryfall.io/large/front/e/0/e01cc65a-0e38-4f41-b9ed-796ef0355d0b.jpg
|
||||
MOC;612591;https://cards.scryfall.io/large/front/e/0/e01cc65a-0e38-4f41-b9ed-796ef0355d0b.jpg
|
||||
MOC;612592;https://cards.scryfall.io/large/front/9/0/90e72f86-9f09-40af-838c-3d344c50f607.jpg
|
||||
MOC;612593;https://cards.scryfall.io/large/front/4/1/414a25b5-2b4f-4935-8564-4b507db12dbc.jpg
|
||||
MOC;612594;https://cards.scryfall.io/large/front/f/9/f9c55add-d621-4477-95ec-f2b691c0bdae.jpg
|
||||
|
||||
|
Can't render this file because it is too large.
|
@@ -1,93 +1,81 @@
|
||||
#NAME:Golgari ramp
|
||||
#DESC:The first Commander Format Deck
|
||||
#NAME:Belbe Commander 2023
|
||||
#DESC:Deck by apparently (tappedout.net)
|
||||
#DESC:Refined for Wagic by Bob
|
||||
#HINT:castpriority(commander,*)
|
||||
Mardu Shadowspear (*) *1
|
||||
Night Market Lookout (*) *1
|
||||
Pulse Tracker (*) *1
|
||||
Thornbow Archer (*) *1
|
||||
Vicious Conquistador (*) *1
|
||||
Archers' Parapet (*) *1
|
||||
Shepherd of Rot (*) *1
|
||||
Loyal Subordinate (*) *1
|
||||
Crypt Ghast (*) *1
|
||||
Rankle, Master of Pranks (*) *1
|
||||
Spawn of Mayhem (*) *1
|
||||
Twilight Prophet (*) *1
|
||||
Conduit of Ruin (*) *1
|
||||
Duplicant (*) *1
|
||||
Oblivion Sower (*) *1
|
||||
Wurmcoil Engine (*) *1
|
||||
World Breaker (*) *1
|
||||
Platinum Emperion (*) *1
|
||||
Apex Devastator (*) *1
|
||||
Blightsteel Colossus (*) *1
|
||||
Ugin, the Ineffable (*) *1
|
||||
Malakir Rebirth (*) *1
|
||||
Nature's Claim (*) *1
|
||||
Veil of Summer (*) *1
|
||||
Vicious Rumors (*) *1
|
||||
Worldly Tutor (*) *1
|
||||
Assassin's Trophy (*) *1
|
||||
Damnable Pact (*) *1
|
||||
Demonic Tutor (*) *1
|
||||
Exsanguinate (*) *1
|
||||
Farseek (*) *1
|
||||
Heroic Intervention (*) *1
|
||||
Rampant Growth (*) *1
|
||||
Three Visits (*) *1
|
||||
Torment of Hailfire (*) *1
|
||||
Agadeem's Awakening (*) *1
|
||||
Barrier Breach (*) *1
|
||||
Beast Within (*) *1
|
||||
Cultivate (*) *1
|
||||
Grim Tutor (*) *1
|
||||
Kodama's Reach (*) *1
|
||||
Toxic Deluge (*) *1
|
||||
Skyshroud Claim (*) *1
|
||||
Return of the Wildspeaker (*) *1
|
||||
Beseech the Queen (*) *1
|
||||
Turntimber Symbiosis (*) *1
|
||||
Decree of Pain (*) *1
|
||||
In Garruk's Wake (*) *1
|
||||
Sol Ring (*) *1
|
||||
Arcane Signet (*) *1
|
||||
Lightning Greaves (*) *1
|
||||
Swiftfoot Boots (*) *1
|
||||
Talisman of Resilience (*) *1
|
||||
Thought Vessel (*) *1
|
||||
God-Pharaoh's Statue (*) *1
|
||||
Staff of Nin (*) *1
|
||||
The Immortal Sun (*) *1
|
||||
Ward of Bones (*) *1
|
||||
Cryptolith Rite (*) *1
|
||||
Sanctum of Stone Fangs (*) *1
|
||||
Phyrexian Arena (*) *1
|
||||
Retreat to Hagra (*) *1
|
||||
Court of Ambition (*) *1
|
||||
Eldrazi Conscription (*) *1
|
||||
Sandwurm Convergence (*) *1
|
||||
Ancient Tomb (*) *1
|
||||
Blast Zone (*) *1
|
||||
Bojuka Bog (*) *1
|
||||
Cabal Coffers (*) *1
|
||||
Castle Garenbrig (*) *1
|
||||
Castle Locthwain (*) *1
|
||||
Command Tower (*) *1
|
||||
Crawling Barrens (*) *1
|
||||
Forest (*) *7
|
||||
Leechridden Swamp (*) *1
|
||||
Llanowar Wastes (*) *1
|
||||
Nurturing Peatland (*) *1
|
||||
Overgrown Tomb (*) *1
|
||||
Phyrexian Tower (*) *1
|
||||
Prismatic Vista (*) *1
|
||||
Reliquary Tower (*) *1
|
||||
Sanctum of Ugin (*) *1
|
||||
Swamp (*) *5
|
||||
Twilight Mire (*) *1
|
||||
Undergrowth Stadium (*) *1
|
||||
Urborg, Tomb of Yawgmoth (*) *1
|
||||
Verdant Catacombs (*) *1
|
||||
War Room (*) *1
|
||||
Woodland Cemetery (*) *1
|
||||
Ancient Stone Idol
|
||||
Apex Devastator
|
||||
Archetype of Endurance
|
||||
Artisan of Kozilek
|
||||
Bane of Bala Ged
|
||||
Beacon of Unrest
|
||||
Bellowing Tanglewurm
|
||||
Cabal Conditioning
|
||||
Caller of the Pack
|
||||
Colossus of Akros
|
||||
Command Tower
|
||||
Conduit of Ruin
|
||||
Copper Myr
|
||||
Court of Ambition
|
||||
Cultivate
|
||||
Dread Defiler
|
||||
Eldrazi Conscription
|
||||
Exsanguinate
|
||||
Farseek
|
||||
Fierce Empath
|
||||
Forest (4ED) *4
|
||||
Forest (NEO) *4
|
||||
Forest (ONE) *4
|
||||
Forest (SNC) *4
|
||||
Garruk's Uprising
|
||||
Gilanra, Caller of Wirewood
|
||||
God-Pharaoh's Statue
|
||||
Grave Betrayal
|
||||
Helm of the Host
|
||||
Hooded Blightfang
|
||||
Horizon Stone
|
||||
In Garruk's Wake
|
||||
Josu Vess, Lich Knight
|
||||
Kodama's Reach (CMD)
|
||||
Leaden Myr
|
||||
Leechridden Swamp
|
||||
Lim-Dul's Hex
|
||||
Loxodon Warhammer (10E)
|
||||
Loyal Subordinate
|
||||
Mardu Shadowspear
|
||||
Mirror Shield
|
||||
Night Market Lookout
|
||||
Oblivion Sower
|
||||
Pathrazer of Ulamog
|
||||
Phyrexian Juggernaut
|
||||
Phyrexian Triniform
|
||||
Plague Spitter
|
||||
Planar Bridge
|
||||
Platinum Emperion
|
||||
Polyraptor
|
||||
Pulse Tracker
|
||||
Rampant Growth
|
||||
Return of the Wildspeaker
|
||||
Sanctum of Stone Fangs
|
||||
Sandstone Oracle
|
||||
Sandwurm Convergence
|
||||
Skull Storm
|
||||
Skyclave Relic
|
||||
Sol Ring
|
||||
Staff of Nin
|
||||
Swamp (ONE) *4
|
||||
Swamp (NEO) *4
|
||||
Swamp (SNC) *4
|
||||
Swamp (4ED) *3
|
||||
The Immortal Sun
|
||||
Thornbow Archer
|
||||
Thought Vessel
|
||||
Three Visits
|
||||
Thunderfoot Baloth
|
||||
Torment of Hailfire
|
||||
Ulamog's Crusher
|
||||
Undergrowth Stadium
|
||||
Urborg, Tomb of Yawgmoth
|
||||
Vicious Conquistador
|
||||
Yavimaya, Cradle of Growth
|
||||
Zendikar Resurgent
|
||||
#CMD:Belbe, Corrupted Observer (*) *1
|
||||
@@ -1,4 +1,203 @@
|
||||
[card]
|
||||
name=Volo, Itinerant Scholar
|
||||
abilities=backgroundpartner
|
||||
text=When Volo enters the battlefield, create Volo's Journal, a legendary colorless artifact token with hexproof and "Whenever you cast a creature spell, note one of its creature types that hasn't been noted for this artifact." -- {2}, {T}: Draw a card for each creature type noted for target permanent you control named Volo's Journal. -- Choose a Background
|
||||
mana={2}{U}
|
||||
type=Legendary Creature
|
||||
subtype=Human Wizard
|
||||
power=2
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Raggadragga, Goreguts Boss
|
||||
text=Each creature you control with a mana ability gets +2/+2. -- Whenever a creature you control with a mana ability attacks, untap it. -- Whenever you cast a spell, if at least seven mana was spent to cast it, untap target creature. It gets +7/+7 and gains trample until end of turn.
|
||||
mana={2}{R}{G}
|
||||
type=Legendary Creature
|
||||
subtype=Human Boar
|
||||
power=4
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Lae'zel, Vlaakith's Champion
|
||||
abilities=backgroundpartner
|
||||
text=If you would put one or more counters on a creature or planeswalker you control or on yourself, put that many plus one of each of those kinds of counters on that permanent or player instead. -- Choose a Background (You can have a Background as a second commander.)
|
||||
mana={2}{W}
|
||||
type=Legendary Creature
|
||||
subtype=Gith Warrior
|
||||
power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Lae'zel's Acrobatics
|
||||
text=Exile all nontoken creatures you control, then roll a d20. -- 1-9 | Return those cards to the battlefield under their owner's control at the beginning of the next end step. -- 10-20 | Return those cards to the battlefield under their owner's control, then exile them again. Return those cards to the battlefield under their owner's control at the beginning of the next end step.
|
||||
mana={3}{W}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Noble Heritage
|
||||
text=Commander creatures you own have "When this creature enters the battlefield and at the beginning of your upkeep, each player may put two +1/+1 counters on a creature they control. For each opponent who does, you gain protection from that player until your next turn." (You can't be targeted, dealt damage, or enchanted by anything controlled by that player.)
|
||||
mana={1}{W}
|
||||
type=Legendary Enchantment
|
||||
subtype=Background
|
||||
[/card]
|
||||
[card]
|
||||
name=Archivist of Oghma
|
||||
abilities=flash
|
||||
text=Flash -- Whenever an opponent searches their library, you gain 1 life and draw a card.
|
||||
mana={1}{W}
|
||||
type=Creature
|
||||
subtype=Halfling Cleric
|
||||
power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Fraying Line
|
||||
text=When Fraying Line enters the battlefield, put a rope counter on target creature you control. -- At the beginning of each player's upkeep, that player may pay {2}. If they do, they put a rope counter on a creature they control. Otherwise, exile Fraying Line and each creature without a rope counter on it, then remove all rope counters from all creatures.
|
||||
mana={4}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Lae'zel's Acrobatics
|
||||
text=Exile all nontoken creatures you control, then roll a d20. -- 1-9 | Return those cards to the battlefield under their owner's control at the beginning of the next end step. -- 10-20 | Return those cards to the battlefield under their owner's control, then exile them again. Return those cards to the battlefield under their owner's control at the beginning of the next end step.
|
||||
mana={3}{W}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Green Slime
|
||||
abilities=flash
|
||||
text=Flash -- When Green Slime enters the battlefield, counter target activated or triggered ability from an artifact or enchantment source. If a permanent's ability is countered this way, destroy that permanent. -- Foretell {G} (During your turn, you may pay {2} and exile this card from your hand face down. Cast it on a later turn for its foretell cost.)
|
||||
mana={2}{G}
|
||||
type=Creature
|
||||
subtype=Ooze
|
||||
power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Aboleth Spawn
|
||||
abilities=flash
|
||||
auto=_WARD_(2)
|
||||
text=Flash -- Ward {2} -- Probing Telepathy - Whenever a creature entering the battlefield under an opponent's control causes a triggered ability of that creature to trigger, you may copy that ability. You may choose new targets for the copy.
|
||||
mana={2}{U}
|
||||
type=Creature
|
||||
subtype=Fish Horror
|
||||
power=2
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Stick Together
|
||||
text=Each player chooses a party from among creatures they control, then sacrifices the rest. (To choose a party, choose up to one each of Cleric, Rogue, Warrior, and Wizard.)
|
||||
mana={3}{W}{W}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Mighty Servant of Leuk-o
|
||||
abilities=trample
|
||||
text=Trample -- Ward-Discard a card. -- Whenever Mighty Servant of Leuk-o becomes crewed for the first time each turn, if it was crewed by exactly two creatures, it gains "Whenever this creature deals combat damage to a player, draw two cards" until end of turn. -- Crew 4
|
||||
mana={3}
|
||||
type=Artifact
|
||||
subtype=Vehicle
|
||||
power=6
|
||||
toughness=6
|
||||
[/card]
|
||||
[card]
|
||||
name=Grell Philosopher
|
||||
text=Aberrant Tinkering - When Grell Philosopher enters the battlefield and at the beginning of your upkeep, each Horror you control gains all activated abilities of target artifact an opponent controls until end of turn. You may spend blue mana as though it were mana of any color to activate those abilities.
|
||||
mana={2}{U}
|
||||
type=Creature
|
||||
subtype=Horror Wizard
|
||||
power=1
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Wyll's Reversal
|
||||
target=*|stack
|
||||
text=Choose target spell or ability with one or more targets. Roll a d20 and add the greatest power among creatures you control. -- 1-14 | You may choose new targets for that spell or ability. -- 15+ | You may choose new targets for that spell or ability. Then copy it. You may choose new targets for the copy.
|
||||
mana={2}{R}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Mighty Servant of Leuk-o
|
||||
abilities=trample
|
||||
text=Trample -- Ward-Discard a card. -- Whenever Mighty Servant of Leuk-o becomes crewed for the first time each turn, if it was crewed by exactly two creatures, it gains "Whenever this creature deals combat damage to a player, draw two cards" until end of turn. -- Crew 4
|
||||
mana={3}
|
||||
type=Artifact
|
||||
subtype=Vehicle
|
||||
power=6
|
||||
toughness=6
|
||||
[/card]
|
||||
[card]
|
||||
name=Fraying Line
|
||||
text=When Fraying Line enters the battlefield, put a rope counter on target creature you control. -- At the beginning of each player's upkeep, that player may pay {2}. If they do, they put a rope counter on a creature they control. Otherwise, exile Fraying Line and each creature without a rope counter on it, then remove all rope counters from all creatures.
|
||||
mana={4}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Lae'zel, Vlaakith's Champion
|
||||
abilities=backgroundpartner
|
||||
text=If you would put one or more counters on a creature or planeswalker you control or on yourself, put that many plus one of each of those kinds of counters on that permanent or player instead. -- Choose a Background (You can have a Background as a second commander.)
|
||||
mana={2}{W}
|
||||
type=Legendary Creature
|
||||
subtype=Gith Warrior
|
||||
power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Volo, Itinerant Scholar
|
||||
abilities=backgroundpartner
|
||||
text=When Volo enters the battlefield, create Volo's Journal, a legendary colorless artifact token with hexproof and "Whenever you cast a creature spell, note one of its creature types that hasn't been noted for this artifact." -- {2}, {T}: Draw a card for each creature type noted for target permanent you control named Volo's Journal. -- Choose a Background
|
||||
mana={2}{U}
|
||||
type=Legendary Creature
|
||||
subtype=Human Wizard
|
||||
power=2
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Archivist of Oghma
|
||||
abilities=flash
|
||||
text=Flash -- Whenever an opponent searches their library, you gain 1 life and draw a card.
|
||||
mana={1}{W}
|
||||
type=Creature
|
||||
subtype=Halfling Cleric
|
||||
power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Aboleth Spawn
|
||||
abilities=flash
|
||||
auto=_WARD_(2)
|
||||
text=Flash -- Ward {2} -- Probing Telepathy - Whenever a creature entering the battlefield under an opponent's control causes a triggered ability of that creature to trigger, you may copy that ability. You may choose new targets for the copy.
|
||||
mana={2}{U}
|
||||
type=Creature
|
||||
subtype=Fish Horror
|
||||
power=2
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Stick Together
|
||||
text=Each player chooses a party from among creatures they control, then sacrifices the rest. (To choose a party, choose up to one each of Cleric, Rogue, Warrior, and Wizard.)
|
||||
mana={3}{W}{W}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Grell Philosopher
|
||||
text=Aberrant Tinkering - When Grell Philosopher enters the battlefield and at the beginning of your upkeep, each Horror you control gains all activated abilities of target artifact an opponent controls until end of turn. You may spend blue mana as though it were mana of any color to activate those abilities.
|
||||
mana={2}{U}
|
||||
type=Creature
|
||||
subtype=Horror Wizard
|
||||
power=1
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Green Slime
|
||||
abilities=flash
|
||||
text=Flash -- When Green Slime enters the battlefield, counter target activated or triggered ability from an artifact or enchantment source. If a permanent's ability is countered this way, destroy that permanent. -- Foretell {G} (During your turn, you may pay {2} and exile this card from your hand face down. Cast it on a later turn for its foretell cost.)
|
||||
mana={2}{G}
|
||||
type=Creature
|
||||
subtype=Ooze
|
||||
power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Bloodthirsty Blade
|
||||
auto=teach(creature) 2/0
|
||||
auto=teach(creature) mustattack
|
||||
@@ -17,6 +216,32 @@ power=0
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Wyll's Reversal
|
||||
target=*|stack
|
||||
text=Choose target spell or ability with one or more targets. Roll a d20 and add the greatest power among creatures you control. -- 1-14 | You may choose new targets for that spell or ability. -- 15+ | You may choose new targets for that spell or ability. Then copy it. You may choose new targets for the copy.
|
||||
mana={2}{R}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Dynaheir, Invoker Adept
|
||||
abilities=haste
|
||||
text=Haste -- You may activate abilities of other creatures you control as though those creatures had haste. -- {T}: When you next activate an ability that isn't a mana ability this turn by spending four or more mana to activate it, copy that ability. You may choose new targets for the copy.
|
||||
mana={1}{U}{R}{W}
|
||||
type=Legendary Creature
|
||||
subtype=Human Wizard
|
||||
power=4
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Jon Irenicus, Shattered One
|
||||
text=At the beginning of your end step, target opponent gains control of up to one target creature you control. Put two +1/+1 counters on it and tap it. It's goaded for the rest of the game and it gains "This creature can't be sacrificed." (It attacks each combat if able and attacks a player other than you if able.) -- Whenever a creature you own but don't control attacks, you draw a card.
|
||||
mana={2}{U}{B}
|
||||
type=Legendary Creature
|
||||
subtype=Elf Wizard
|
||||
power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Valiant Changeling
|
||||
abilities=changeling,double strike
|
||||
text=This spell costs {1} less to cast for each creature type among creatures you control. This effect can't reduce the amount of mana this spell costs by more than {5}. -- Changeling (This card is every creature type.) -- Double strike
|
||||
@@ -26,3 +251,31 @@ subtype=Shapeshifter
|
||||
power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Raggadragga, Goreguts Boss
|
||||
text=Each creature you control with a mana ability gets +2/+2. -- Whenever a creature you control with a mana ability attacks, untap it. -- Whenever you cast a spell, if at least seven mana was spent to cast it, untap target creature. It gets +7/+7 and gains trample until end of turn.
|
||||
mana={2}{R}{G}
|
||||
type=Legendary Creature
|
||||
subtype=Human Boar
|
||||
power=4
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Dynaheir, Invoker Adept
|
||||
abilities=haste
|
||||
text=Haste -- You may activate abilities of other creatures you control as though those creatures had haste. -- {T}: When you next activate an ability that isn't a mana ability this turn by spending four or more mana to activate it, copy that ability. You may choose new targets for the copy.
|
||||
mana={1}{U}{R}{W}
|
||||
type=Legendary Creature
|
||||
subtype=Human Wizard
|
||||
power=4
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Jon Irenicus, Shattered One
|
||||
text=At the beginning of your end step, target opponent gains control of up to one target creature you control. Put two +1/+1 counters on it and tap it. It's goaded for the rest of the game and it gains "This creature can't be sacrificed." (It attacks each combat if able and attacks a player other than you if able.) -- Whenever a creature you own but don't control attacks, you draw a card.
|
||||
mana={2}{U}{B}
|
||||
type=Legendary Creature
|
||||
subtype=Elf Wizard
|
||||
power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
|
||||
@@ -17,13 +17,6 @@ mana={3}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Lightning Reflexes
|
||||
text=You may cast Lightning Reflexes as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant creature -- Enchanted creature gets +1/+0 and has first strike.
|
||||
mana={1}{R}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Crawlspace
|
||||
text=No more than two creatures can attack you each combat.
|
||||
mana={3}
|
||||
|
||||
@@ -44,15 +44,6 @@ power=6
|
||||
toughness=6
|
||||
[/card]
|
||||
[card]
|
||||
name=Umori, the Collector
|
||||
text=Companion - Each nonland card in your starting deck shares a card type. (If this card is your chosen companion, you may cast it once from outside the game.) -- As Umori, the CollectorUmori, the Collector enters the battlefield, choose a card type. -- Spells you cast of the chosen type cost 1 less to cast.
|
||||
mana={2}{BG}{BG}
|
||||
type=Legendary Creature
|
||||
subtype=Ooze
|
||||
power=4
|
||||
toughness=5
|
||||
[/card]
|
||||
[card]
|
||||
name=Zirda, the Dawnwaker
|
||||
text=Companion - Each permanent card in your starting deck has an activated ability. (If this card is your chosen companion, you may cast it once from outside the game.) -- Abilities you activate that aren't mana abilities cost {2} less to activate. This effect can't reduce the mana in that cost to less than one mana. -- {1}, {T}: Target creature can't block this turn.
|
||||
mana={1}{RW}{RW}
|
||||
|
||||
@@ -68,13 +68,6 @@ mana={1}{U}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Lightning Reflexes
|
||||
text=You may cast Lightning Reflexes as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant creature -- Enchanted creature gets +1/+0 and has first strike.
|
||||
mana={1}{R}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Energy Vortex
|
||||
text=As Energy Vortex enters the battlefield, choose an opponent. -- At the beginning of your upkeep, remove all energy counters from Energy Vortex. -- At the beginning of the chosen player's upkeep, Energy Vortex deals 3 damage to that player unless he or she pays {1} for each energy counter on Energy Vortex. -- {X}: Put X energy counters on Energy Vortex. Activate this ability only during your upkeep.
|
||||
mana={3}{U}{U}
|
||||
@@ -111,13 +104,6 @@ mana={4}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Soar
|
||||
text=You may cast Soar as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant creature -- Enchanted creature gets +0/+1 and has flying.
|
||||
mana={1}{U}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Celestial Dawn
|
||||
text=Lands you control are Plains. -- Nonland cards you own that aren't on the battlefield, spells you control, and nonland permanents you control are white. -- You may spend white mana as though it were mana of any color. You may spend other mana only as though it were colorless mana.
|
||||
mana={1}{W}{W}
|
||||
@@ -139,13 +125,6 @@ power=1
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Armor of Thorns
|
||||
text=You may cast Armor of Thorns as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant nonblack creature -- Enchanted creature gets +2/+2.
|
||||
mana={1}{G}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Mangara's Tome
|
||||
text=When Mangara's Tome enters the battlefield, search your library for five cards, exile them in a face-down pile, and shuffle that pile. Then shuffle your library. -- {2}: The next time you would draw a card this turn, instead put the top card of the exiled pile into its owner's hand.
|
||||
mana={5}
|
||||
@@ -158,13 +137,6 @@ mana={1}{G}{G}
|
||||
type=World Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Grave Servitude
|
||||
text=You may cast Grave Servitude as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant creature -- Enchanted creature gets +3/-1 and is black.
|
||||
mana={1}{B}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Noble Elephant
|
||||
abilities=trample,banding
|
||||
text=Trample; banding (Any creatures with banding, and up to one without, can attack in a band. Bands are blocked as a group. If any creatures with banding you control are blocking or being blocked by a creature, you divide that creature's combat damage, not its controller, among any of the creatures it's being blocked by or is blocking.)
|
||||
|
||||
@@ -70,12 +70,3 @@ subtype=Elemental Horror
|
||||
power=3
|
||||
toughness=5
|
||||
[/card]
|
||||
[card]
|
||||
name=Umori, the Collector
|
||||
text=Companion - Each nonland card in your starting deck shares a card type. (If this card is your chosen companion, you may cast it once from outside the game.) -- As Umori, the CollectorUmori, the Collector enters the battlefield, choose a card type. -- Spells you cast of the chosen type cost 1 less to cast.
|
||||
mana={2}{BG}{BG}
|
||||
type=Legendary Creature
|
||||
subtype=Ooze
|
||||
power=4
|
||||
toughness=5
|
||||
[/card]
|
||||
|
||||
@@ -15,13 +15,6 @@ power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Mystic Veil
|
||||
text=You may cast Mystic Veil as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant creature -- Enchanted creature has shroud. (It can't be the target of spells or abilities.)
|
||||
mana={1}{U}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Three Wishes
|
||||
text=Exile the top three cards of your library face down. You may look at those cards for as long as they remain exiled. Until your next turn, you may play those cards. At the beginning of your next upkeep, put any of those cards you didn't play into your graveyard.
|
||||
mana={1}{U}{U}
|
||||
@@ -62,13 +55,6 @@ mana={2}{W}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Spider Climb
|
||||
text=You may cast Spider Climb as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant creature -- Enchanted creature gets +0/+3 and has reach. (It can block creatures with flying.)
|
||||
mana={G}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Honorable Passage
|
||||
text=The next time a source of your choice would deal damage to target creature or player this turn, prevent that damage. If damage from a red source is prevented this way, Honorable Passage deals that much damage to the source's controller.
|
||||
mana={1}{W}
|
||||
@@ -100,19 +86,6 @@ mana={3}{R}
|
||||
type=World Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Parapet
|
||||
text=You may cast Parapet as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Creatures you control get +0/+1.
|
||||
mana={1}{W}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Relic Ward
|
||||
text=You may cast Relic Ward as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant artifact -- Enchanted artifact has shroud. (It can't be the target of spells or abilities.)
|
||||
mana={1}{W}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Desolation
|
||||
text=At the beginning of each end step, each player who tapped a land for mana this turn sacrifices a land. If a Plains is sacrificed this way, Desolation deals 2 damage to that Plains's controller.
|
||||
mana={1}{B}{B}
|
||||
|
||||
@@ -1,11 +1,4 @@
|
||||
[card]
|
||||
name=Armor of Thorns
|
||||
text=You may cast Armor of Thorns as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant nonblack creature -- Enchanted creature gets +2/+2.
|
||||
mana={1}{G}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Magister of Worth
|
||||
abilities=flying
|
||||
text=Flying -- Will of the council - When Magister of Worth enters the battlefield, starting with you, each player votes for grace or condemnation. If grace gets more votes, each player returns each creature card from his or her graveyard to the battlefield. If condemnation gets more votes or the vote is tied, destroy all creatures other than Magister of Worth.
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
Primal Command
|
||||
Rowan Kenrith
|
||||
Kitsune Ace
|
||||
Professional Face-Breaker
|
||||
Pyre-Sledge Arsonist
|
||||
Sokenzan Smelter
|
||||
Hotshot Mechanic
|
||||
@@ -138,7 +137,6 @@ Venser, Corpse Puppet
|
||||
Slobad, Iron Goblin
|
||||
Solphim, Mayhem Dominus
|
||||
Capricious Hellraiser
|
||||
Tyrranax Rex
|
||||
Phyrexian Vindicator
|
||||
Skrelv, Defector Mite
|
||||
Drivnod, Carnage Dominus
|
||||
@@ -155,7 +153,6 @@ Tamiyo's Logbook
|
||||
Maze's Mantle
|
||||
Lattice-Blade Mantis
|
||||
Noxious Assault
|
||||
Paladin of Predation
|
||||
Plague Nurse
|
||||
Porcelain Zealot
|
||||
Vanish into Eternity
|
||||
@@ -202,7 +199,6 @@ Anoint with Affliction
|
||||
Hall of the Bandit Lord
|
||||
Boseiju, Who Shelters All
|
||||
Chief Engineer
|
||||
Oracle's Vault
|
||||
Conqueror's Flail
|
||||
Cryptic Spires
|
||||
Thromok the Insatiable
|
||||
@@ -223,57 +219,40 @@ Unite the Coalition
|
||||
Verrak, Warped Sengir
|
||||
Gerrard's Hourglass Pendant
|
||||
The Mana Rig
|
||||
Shalai and Hallar
|
||||
Saint Traft and Rem Karolus
|
||||
Rashmi and Ragavan
|
||||
Moira and Teshar
|
||||
Elenda and Azor
|
||||
Firemane Commando
|
||||
Elspeth's Talent
|
||||
Infernal Sovereign
|
||||
Teferi's Talent
|
||||
Rowan's Talent
|
||||
Liliana's Talent
|
||||
Begin the Invasion
|
||||
Vivien's Talent
|
||||
Sidar Jabari of Zhalfir
|
||||
Kasla, the Broken Halo
|
||||
Gimbal, Gremlin Prodigy
|
||||
Brimaz, Blight of Oreskos
|
||||
Bright-Palm, Soul Awakener
|
||||
Ichor Elixir
|
||||
Bitterthorn, Nissa's Animus
|
||||
Wildfire Awakener
|
||||
Vodalian Wave-Knight
|
||||
Mistmeadow Vanisher
|
||||
Flockchaser Phantom
|
||||
Cutthroat Negotiator
|
||||
Sandsteppe War Riders
|
||||
Path of the Animist
|
||||
Emergent Woodwurm
|
||||
Exsanguinator Cavalry
|
||||
Conclave Sledge-Captain
|
||||
Uncivil Unrest
|
||||
Path of the Pyromancer
|
||||
Pain Distributor
|
||||
Mirror-Style Master
|
||||
Hedron Detonator
|
||||
Death-Greeter's Champion
|
||||
Dance with Calamity
|
||||
Path of the Schemer
|
||||
Locthwain Lancer
|
||||
Guardian Scalelord
|
||||
Filigree Vector
|
||||
Blight Titan
|
||||
Schema Thief
|
||||
Path of the Enigma
|
||||
Herald of Hoofbeats
|
||||
Deluxe Dragster
|
||||
Foulmire Knight
|
||||
Wand of the Worldsoul
|
||||
Vulpine Harvester
|
||||
Path of the Ghosthunter
|
||||
Nesting Dovehawk
|
||||
Stensia
|
||||
Krosa
|
||||
Sokenzan
|
||||
@@ -296,13 +275,7 @@ Murderous Rider
|
||||
The Caldaia
|
||||
Enigma Ridges
|
||||
Esper
|
||||
Slimefoot and Squee
|
||||
Katilda and Lier
|
||||
Goro-Goro and Satoru
|
||||
Excise the Imperfect
|
||||
Darksteel Splicer
|
||||
Conjurer's Mantle
|
||||
Chivalric Alliance
|
||||
Wear
|
||||
Struggle
|
||||
Heaven
|
||||
@@ -355,9 +328,6 @@ Invasion of Dominaria
|
||||
Borborygmos and Fblthp
|
||||
Baral and Kari Zev
|
||||
Invasion of Theros
|
||||
Surrak and Goreclaw
|
||||
Pile On
|
||||
Orthion, Hero of Lavabrink
|
||||
Zurgo and Ojutai
|
||||
Sandstalker Moloch
|
||||
Zimone and Dina
|
||||
@@ -368,21 +338,15 @@ Hoarding Broodlord
|
||||
Seed of Hope
|
||||
Enduring Bondwarden
|
||||
Invasion of Fiora
|
||||
Axgard Artisan
|
||||
Terror of Towashi
|
||||
Invasion of Eldraine
|
||||
Tangled Skyline
|
||||
Seer of Stolen Sight
|
||||
Elesh Norn
|
||||
Ichor Shade
|
||||
Injector Crocodile
|
||||
Zephyr Winder
|
||||
Referee Squad
|
||||
Invasion of Innistrad
|
||||
Interdisciplinary Mascot
|
||||
Vengeant Earth
|
||||
Seedpod Caretaker
|
||||
Phyrexian Pegasus
|
||||
Essence of Orthodoxy
|
||||
Invasion of Ravnica
|
||||
Overgrown Pest
|
||||
@@ -393,7 +357,6 @@ Kogla and Yidaro
|
||||
Ozolith, the Shattered Spire
|
||||
Attentive Skywarden
|
||||
Gift of Compleation
|
||||
Angelic Intervention
|
||||
Flitting Guerrilla
|
||||
Urabrask
|
||||
Invasion of Ikoria
|
||||
@@ -406,7 +369,6 @@ Invasion of Shandalar
|
||||
Rona, Herald of Invasion
|
||||
Jin-Gitaxias
|
||||
Invasion of Belenon
|
||||
Fertilid's Favor
|
||||
Wicked Slumber
|
||||
Doomskar Warrior
|
||||
Deeproot Wayfinder
|
||||
@@ -421,7 +383,6 @@ Converter Beast
|
||||
Realmbreaker, the Invasion Tree
|
||||
Searing Barb
|
||||
Voldaren Thrillseeker
|
||||
Volcanic Spite
|
||||
Nahiri's Warcrafting
|
||||
Sculpted Perfection
|
||||
Scrappy Bruiser
|
||||
@@ -553,212 +514,9 @@ Tear Asunder
|
||||
Rona's Vortex
|
||||
The Weatherseed Treaty
|
||||
The World Spell
|
||||
Sailors' Bane
|
||||
Sea Hag // Aquatic Ingress
|
||||
Sapphire Dragon // Psionic Pulse
|
||||
Shameless Charlatan
|
||||
Sword Coast Sailor
|
||||
Stunning Strike
|
||||
Tomb of Horrors Adventurer
|
||||
Sword Coast Serpent // Capsizing Wave
|
||||
Vhal, Candlekeep Researcher
|
||||
Volo, Itinerant Scholar
|
||||
Young Blue Dragon // Sand Augury
|
||||
Agent of the Iron Throne
|
||||
Altar of Bhaal // Bone Offering
|
||||
Agent of the Shadow Thieves
|
||||
Ancient Brass Dragon
|
||||
Astarion's Thirst
|
||||
Passionate Archaeologist
|
||||
Undercellar Sweep
|
||||
White Plume Adventurer
|
||||
Zevlor, Elturel Exile
|
||||
Veteran Soldier
|
||||
Rilsa Rael, Kingpin
|
||||
Windshaper Planetar
|
||||
Raggadragga, Goreguts Boss
|
||||
Aarakocra Sneak
|
||||
Durnan of the Yawning Portal
|
||||
Bane's Contingency
|
||||
Candlekeep Sage
|
||||
Candlekeep Inspiration
|
||||
Stonespeaker Crystal
|
||||
Cone of Cold
|
||||
Dungeon Delver
|
||||
Feywild Caretaker
|
||||
Feywild Visitor
|
||||
Gale's Redirection
|
||||
Illithid Harvester // Plant Tadpoles
|
||||
Imoen, Mystic Trickster
|
||||
Lapis Orb of Dragonkind
|
||||
Moonshae Pixie // Pixie Dust
|
||||
Modify Memory
|
||||
Firkraag, Cunning Instigator
|
||||
Flaming Fist
|
||||
Far Traveler
|
||||
Goliath Paladin
|
||||
Guardian Naga // Banishing Coils
|
||||
Horn of Valhalla // Ysgard's Call
|
||||
Lae'zel, Vlaakith's Champion
|
||||
Inspiring Leader
|
||||
Legion Loyalty
|
||||
Lae'zel's Acrobatics
|
||||
Noble Heritage
|
||||
Pegasus Guardian // Rescue the Foal
|
||||
Neera, Wild Mage
|
||||
Nine-Fingers Keene
|
||||
Minthara, Merciless Soul
|
||||
Myrkul, Lord of Bones
|
||||
Recruitment Drive
|
||||
Mazzy, Truesword Paladin
|
||||
Rasaad yn Bashir
|
||||
Lozhan, Dragons' Legacy
|
||||
Sculpted Sunburst
|
||||
Clan Crafter
|
||||
Folk Hero
|
||||
Baeloth Barrityl, Entertainer
|
||||
Haunted One
|
||||
Zellix, Sanity Flayer
|
||||
Archivist of Oghma
|
||||
Dungeoneer's Pack
|
||||
Fraying Line
|
||||
Dusk Mangler
|
||||
Call to the Void
|
||||
Elder Brain
|
||||
Caves of Chaos Adventurer
|
||||
Intellect Devourer
|
||||
Pact Weapon
|
||||
Ravenloft Adventurer
|
||||
Balor
|
||||
Storm King's Thunder
|
||||
Wand of Wonder
|
||||
Captain N'ghathrod
|
||||
Passageway Seer
|
||||
Sarevok, Deathbringer
|
||||
Safana, Calimport Cutthroat
|
||||
Scion of Halaster
|
||||
Sigil of Myrkul
|
||||
Sivriss, Nightmare Speaker
|
||||
Topaz Dragon // Entropic Cloud
|
||||
Vicious Battlerager
|
||||
Underdark Explorer
|
||||
Amethyst Dragon // Explosive Crystal
|
||||
Bloodboil Sorcerer
|
||||
Carnelian Orb of Dragonkind
|
||||
Dragon Cultist
|
||||
Fang Dragon // Forktail Sweep
|
||||
Gnoll War Band
|
||||
Guild Artisan
|
||||
Inspired Tinkering
|
||||
Trailblazer's Torch
|
||||
Green Slime
|
||||
Spectacular Showdown
|
||||
Vexing Puzzlebox
|
||||
Venture Forth
|
||||
Tlincalli Hunter // Retrieve Prey
|
||||
Journey to the Lost City
|
||||
Gond Gate
|
||||
Sarevok's Tome
|
||||
Multiclass Baldric
|
||||
Criminal Past
|
||||
Cloudkill
|
||||
Cultist of the Absolute
|
||||
Gray Slaad // Entropic Decay
|
||||
Ghost Lantern // Bind Spirit
|
||||
Hezrou // Demonic Stench
|
||||
Guildsworn Prowler
|
||||
Myrkul's Edict
|
||||
Nothic
|
||||
Nefarious Imp
|
||||
Nautiloid Ship
|
||||
Deep Gnome Terramancer
|
||||
Harper Recruiter
|
||||
Seasoned Dungeoneer
|
||||
Lantern of Revealing
|
||||
Iron Mastiff
|
||||
Astral Dragon
|
||||
Aboleth Spawn
|
||||
Stick Together
|
||||
Marut
|
||||
Psionic Ritual
|
||||
Mocking Doppelganger
|
||||
Mighty Servant of Leuk-o
|
||||
Grell Philosopher
|
||||
Endless Evil
|
||||
Mirror of Life Trapping
|
||||
Brainstealer Dragon
|
||||
Navigation Orb
|
||||
Solemn Doomguide
|
||||
From the Catacombs
|
||||
Death Kiss
|
||||
Bothersome Quasit
|
||||
Rug of Smothering
|
||||
Nalfeshnee
|
||||
Loot Dispute
|
||||
Delayed Blast Fireball
|
||||
Tasha, the Witch Queen
|
||||
Minsc & Boo, Timeless Heroes
|
||||
Elminster
|
||||
Faceless One
|
||||
Battle Angels of Tyr
|
||||
Undermountain Adventurer
|
||||
Abdel Adrian, Gorion's Ward
|
||||
Owlbear Cub
|
||||
Majestic Genesis
|
||||
Barroom Brawl
|
||||
Earthquake Dragon
|
||||
Wrathful Red Dragon
|
||||
Wyll's Reversal
|
||||
Ellyn Harbreeze, Busybody
|
||||
Astral Confrontation
|
||||
Banishment
|
||||
Artificer Class
|
||||
Livaan, Cultist of Tiamat
|
||||
Popular Entertainer
|
||||
Stirring Bard
|
||||
Swashbuckler Extraordinaire
|
||||
Street Urchin
|
||||
Tavern Brawler
|
||||
Thunderwave
|
||||
Two-Handed Axe // Sweeping Cleave
|
||||
Wild Magic Surge
|
||||
Wyll, Blade of Frontiers
|
||||
Young Red Dragon // Bathe in Gold
|
||||
Ambitious Dragonborn
|
||||
Acolyte of Bahamut
|
||||
Avenging Hunter
|
||||
Alaundo the Seer
|
||||
Baba Lysaga, Night Witch
|
||||
Bhaal, Lord of Murder
|
||||
Bane, Lord of Darkness
|
||||
Commander Liara Portyr
|
||||
Mage's Attendant
|
||||
Dynaheir, Invoker Adept
|
||||
Gorion, Wise Mentor
|
||||
Gluntch, the Bestower
|
||||
Kagha, Shadow Archdruid
|
||||
Jon Irenicus, Shattered One
|
||||
Rumor Gatherer
|
||||
Cloakwood Hermit
|
||||
Colossal Badger // Dig Deep
|
||||
Dread Linnorm // Scale Deflection
|
||||
Druid of the Emerald Grove
|
||||
Druidic Ritual
|
||||
Emerald Dragon // Dissonant Wave
|
||||
Explore the Underdark
|
||||
Ettercap // Web Shot
|
||||
Jade Orb of Dragonkind
|
||||
Hardy Outlander
|
||||
Master Chef
|
||||
Monster Manual // Zoological Study
|
||||
Overwhelming Encounter
|
||||
Raised by Giants
|
||||
Scaled Nurturer
|
||||
Skanos Dragonheart
|
||||
Split the Spoils
|
||||
Contraband Livestock
|
||||
Blessed Hippogriff // Tyr's Blessing
|
||||
Crystal Dragon // Rob the Hoard
|
||||
Induced Amnesia
|
||||
Naban, Dean of Iteration
|
||||
Goblin Bangchuckers
|
||||
@@ -1169,7 +927,6 @@ Arbalest Engineers
|
||||
Hulking Metamorph
|
||||
The Temporal Anchor
|
||||
Urza's Command
|
||||
Rootwire Amalgam
|
||||
Gix's Caress
|
||||
Legions to Ashes
|
||||
Mishra, Tamer of Mak Fawa
|
||||
@@ -1197,7 +954,6 @@ Gwenna, Eyes of Gaea
|
||||
Overwhelming Remorse
|
||||
Urza's Sylex
|
||||
Mishra's Research Desk
|
||||
Steel Seraph
|
||||
Hurkyl, Master Wizard
|
||||
Forging the Anchor
|
||||
Involuntary Cooldown
|
||||
@@ -1235,7 +991,6 @@ Tower Worker
|
||||
Thran Power Suit
|
||||
Thran Spider
|
||||
Symmetry Matrix
|
||||
Titania, Voice of Gaea
|
||||
Mishra, Claimed by Gix
|
||||
The Mightstone and Weakstone
|
||||
Recommission
|
||||
|
||||
@@ -5,6 +5,16 @@ year=2022-06-10
|
||||
total=849
|
||||
[/meta]
|
||||
[card]
|
||||
primitive=Undercity
|
||||
id=57018400
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=The Initiative
|
||||
id=57018401
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Faceless One
|
||||
id=570184
|
||||
rarity=S
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
author=Wagic Team
|
||||
name=March of the Machine Commander
|
||||
year=2023-04-21
|
||||
total=457
|
||||
total=451
|
||||
[/meta]
|
||||
[card]
|
||||
primitive=Bright-Palm, Soul Awakener
|
||||
@@ -1245,16 +1245,11 @@ id=612496
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Foulmire Knight
|
||||
primitive=Foulmire Knight // Profane Insight
|
||||
id=612497
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Profane Insight
|
||||
id=612497
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Go for the Throat
|
||||
id=612498
|
||||
rarity=U
|
||||
@@ -1295,16 +1290,11 @@ id=612505
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Murderous Rider
|
||||
primitive=Murderous Rider // Swift End
|
||||
id=612506
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Swift End
|
||||
id=612506
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Night's Whisper
|
||||
id=612507
|
||||
rarity=C
|
||||
@@ -1355,16 +1345,11 @@ id=612515
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Smitten Swordmaster
|
||||
primitive=Smitten Swordmaster // Curry Favor
|
||||
id=612516
|
||||
rarity=C
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Curry Favor
|
||||
id=612516
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Syr Konrad, the Grim
|
||||
id=612517
|
||||
rarity=U
|
||||
@@ -1660,16 +1645,11 @@ id=612575
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Heaven
|
||||
primitive=Heaven // Earth
|
||||
id=612576
|
||||
rarity=R
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Earth
|
||||
id=612576
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Improbable Alliance
|
||||
id=612577
|
||||
rarity=U
|
||||
@@ -1720,16 +1700,11 @@ id=612586
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Struggle
|
||||
primitive=Struggle // Survive
|
||||
id=612587
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Survive
|
||||
id=612587
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Time Wipe
|
||||
id=612588
|
||||
rarity=R
|
||||
@@ -1745,16 +1720,11 @@ id=612590
|
||||
rarity=M
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Wear
|
||||
primitive=Wear // Tear
|
||||
id=612591
|
||||
rarity=U
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Tear
|
||||
id=612591
|
||||
rarity=T
|
||||
[/card]
|
||||
[card]
|
||||
primitive=Whirlwind of Thought
|
||||
id=612592
|
||||
rarity=R
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# it means that if you have a macro named MACRO and a macro named MACRO2, you'll run into trouble because MACRO2 will match MACRO
|
||||
# Because of that, you need to use a unique delimiter at the beginning and the end of a macro, I personally use "__"
|
||||
#
|
||||
# Limitations: parameter inside macro must not contain ")"
|
||||
# Limitations: parameter inside macro must not contain "()"
|
||||
|
||||
# Standard Cycling
|
||||
#AUTO_DEFINE __CYCLING__($cost) $cost{cycle}:name(cycling) draw:1
|
||||
@@ -59,6 +59,11 @@
|
||||
|
||||
# Scry, Evergreen
|
||||
#AUTO_DEFINE _SCRY_($c) scry:$c scrycore delayed dontshow donothing scrycoreend scryend
|
||||
#AUTO_DEFINE _SCRY1_ scry:1 scrycore delayed dontshow donothing scrycoreend scryend
|
||||
#AUTO_DEFINE _SCRY2_ scry:2 scrycore delayed dontshow donothing scrycoreend scryend
|
||||
#AUTO_DEFINE _SCRY3_ scry:3 scrycore delayed dontshow donothing scrycoreend scryend
|
||||
#AUTO_DEFINE _SCRY4_ scry:4 scrycore delayed dontshow donothing scrycoreend scryend
|
||||
#AUTO_DEFINE _SCRY5_ scry:5 scrycore delayed dontshow donothing scrycoreend scryend
|
||||
|
||||
# Fabricate
|
||||
#AUTO_DEFINE _FABRICATE_($c) transforms((,newability[choice counter(1/1.$c)],newability[choice create(Servo:Artifact Creature Servo:1/1)*$c])) ueot
|
||||
@@ -97,13 +102,13 @@
|
||||
#AUTO_DEFINE _RECOVER_($cost) @movedTo(creature|myGraveyard) from(Battlefield):may pay{$cost} name(Return to owner Hand) moveTo(ownerHand) all(this) donothing?moveTo(exile) all(this)
|
||||
|
||||
# Clash, not implemented
|
||||
$AUTO_DEFINE _CLASH_ Put here a code if compare the casting cost based on Erratic Explosion. Meaby it would work with a few fix
|
||||
#AUTO_DEFINE _CLASH_ Put here a code if compare the casting cost based on Erratic Explosion. Meaby it would work with a few fix
|
||||
|
||||
# Proliferate
|
||||
#AUTO_DEFINE _PROLIFERATE_ name(Proliferate) notatarget(proliferation) proliferate
|
||||
|
||||
# Scavenge
|
||||
#AUTO_DEFINE _SCAVENGE_($cost) {$cost}:name(scavenge) counter(1/1,storedpower) target(creature) asSorcery
|
||||
#AUTO_DEFINE _SCAVENGE_($power) name(scavenge) counter(1/1,$power) target(creature) asSorcery
|
||||
|
||||
# Monstrosity, not implemented
|
||||
#AUTO_DEFINE _MONSTROSITY_($cost,$c) name(Monstrosity) this(cantargetcard(*[-monstrous]) {$cost}:becomes(monstrous) forever && counter(1/1.$c)
|
||||
@@ -124,6 +129,10 @@ $AUTO_DEFINE _CLASH_ Put here a code if compare the casting cost based on Errati
|
||||
#AUTO_DEFINE _MONARCH_CONTROLLER_ if type(The Monarch|battlefield)~lessthan~1 then token(The Monarch) else all(The Monarch|battlefield) moveto(mybattlefield) and!( transforms((,newability[becomesmonarch controller])) forever )!
|
||||
#AUTO_DEFINE _MONARCH_OPPONENT_ if type(The Monarch|battlefield)~lessthan~1 then token(The Monarch) opponent else all(The Monarch|battlefield) moveto(opponentbattlefield) and!( transforms((,newability[becomesmonarch controller])) forever )!
|
||||
|
||||
# Initiative
|
||||
#AUTO_DEFINE _INITIATIVE_CONTROLLER_ if type(The Initiative|battlefield)~lessthan~1 then token(The Initiative) else all(The Initiative|battlefield) moveto(mybattlefield) and!( transforms((,newability[takesinitiative controller])) forever )!
|
||||
#AUTO_DEFINE _INITIATIVE_OPPONENT_ if type(The Initiative|battlefield)~lessthan~1 then token(The Initiative) opponent else all(The Initiative|battlefield) moveto(opponentbattlefield) and!( transforms((,newability[takesinitiative controller])) forever )!
|
||||
|
||||
# Explore, not implemented
|
||||
#AUTO_DEFINE _EXPLORE_ reveal:1 optionone if type(land|reveal)~lessthan~1 then transforms((,newability[counter(1/1)])) optiononeend optiontwo if type(land|reveal)~morethan~0 then name(move to Hand) target(<1>*|reveal) moveto(myHand) else transforms((,newability[Choice name(back to library) target(<1>*|reveal) moveto(mylibrary)],newability[Choice name(put into Graveyard) target(<1>*|reveal) moveto(myGraveyard)])) optiontwoend revealend limit:1
|
||||
|
||||
@@ -142,11 +151,11 @@ $AUTO_DEFINE _CLASH_ Put here a code if compare the casting cost based on Errati
|
||||
# Undergrowth, not implemented
|
||||
#AUTO_DEFINE _UNDERGROWTH_ foreach(creature|myGraveyard)
|
||||
|
||||
# Afterlife, not implemented
|
||||
#AUTO_DEFINE _AFTERLIFE_($c) @movedTo(this|graveyard) from(battlefield):create(Spirit:Creature Spirit:1/1:white,black:flying)*$c
|
||||
# Afterlife
|
||||
#AUTO_DEFINE _AFTERLIFETOKEN_ create(Spirit:Creature Spirit:1/1:white:black:flying)
|
||||
|
||||
# Riot
|
||||
#AUTO_DEFINE _RIOT_ movedTo(this|myBattlefield):transforms((,newability[ability$! name(Choose counter or ability) choice name(Put a +1/+1 counter) counter(1/1,1) target(creature) _ choice name(Gains Haste) haste target(creature) forever !$ controller]))
|
||||
#AUTO_DEFINE _RIOT_ movedTo(this|myBattlefield):transforms((,newability[ability$! name(Choose counter or ability) choice name(Put a +1/+1 counter) counter(1/1) target(creature) _ choice name(Gains Haste) haste target(creature) forever !$ controller]))
|
||||
|
||||
# Learn
|
||||
#AUTO_DEFINE _LEARN_ name(Learn) transforms((,newability[if type(*[lesson]|mysideboard)~morethan~0 then choice name(Put lesson in hand) name(Put lesson in hand) target(*[lesson]|mysideboard) moveto(myhand)],newability[if type(*|myhand)~morethan~0 then choice name(Discard and draw) name(Discard and draw) target(*|myhand) reject and!(draw:1)!],newability[if type(Retriever Phoenix|mygraveyard)~morethan~0 then choice name(Return a Retriever Phoenix) name(Return a Retriever Phoenix) target(Retriever Phoenix|mygraveyard) moveto(myBattlefield)],newability[choice name(Don't learn) donothing])) oneshot
|
||||
@@ -176,11 +185,23 @@ $AUTO_DEFINE _CLASH_ Put here a code if compare the casting cost based on Errati
|
||||
#AUTO_DEFINE _RENOWN_($c) this(cantargetcard(*[-renown]) transforms((,newability[@combatdamaged(player) from(this):counter(1/1.$c) && becomes(renown) forever]))
|
||||
|
||||
# Exile card. Return it to the battlefield under its owner's control at the beginning of the next end step.
|
||||
#AUTO_DEFINE _BLINK_UEOT_ name(Blink ueot) all(this) transforms((,newability[moveto(exile)],newability[phaseactionmulti[endofturn once] moveto(ownerbattlefield)]))
|
||||
#AUTO_DEFINE _BLINK_UEOT_ name(Blink ueot) all(this) transforms((,newability[moveto(exile)],newability[if cantargetcard(*[-token]|*) then phaseactionmulti[endofturn once] moveto(ownerbattlefield)]))
|
||||
|
||||
# Connives. (Draw a card, then discard a card. If you discarded a nonland card, put a +1/+1 counter on this creature.)
|
||||
#AUTO_DEFINE _CONNIVES_ draw:1 && transforms((,newability[if type(*[-land]|myhand)~morethan~0 then choice name(Discard a nonland) name(Discard a nonland) target(*[-land]|myhand) reject && counter(1/1) all(this)],newability[if type(land|myhand)~morethan~0 then choice name(Discard a land) name(Discard a land) target(land|myhand) reject])) oneshot
|
||||
|
||||
# Eternalize
|
||||
#AUTO_DEFINE _ETERNALIZE_ name(Eternalize) clone and!( transforms((Zombie,removemc,setpower=4,settoughness=4,black)) forever )! assorcery
|
||||
|
||||
# Discard a card. If you do, draw a card
|
||||
#AUTO_DEFINE _DISCARD&DRAW_ reject notatarget(*|myhand) and!(draw:1 controller)!
|
||||
|
||||
# Target creature deals damage equal to its power to target creature you don't control.
|
||||
#AUTO_DEFINE _PUNCH_ transforms((,newability[dynamicability<!powerstrike!> target(creature|opponentbattlefield)])) oneshot
|
||||
|
||||
# Must be blocked this turn if able
|
||||
#AUTO_DEFINE _MUST_BE_BLOCKD_ newability[@combat(attacking) source(this):ability$! notatarget(creature|myBattlefield) transforms((,newability[mustblock])) ueot!$ opponent]
|
||||
|
||||
# Angel Token
|
||||
#AUTO_DEFINE _ANGELTOKEN_ create(Angel:Creature Angel:4/4:white:flying)
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -238,7 +238,7 @@ name=Arlinn, Embraced by the Moon
|
||||
backside=Arlinn Kord
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Creatures gets +1/+1 & trample) all(creature|mybattlefield) 1/1 ueot && all(creature|mybattlefield) trample ueot
|
||||
auto={C(0/0,-1,Loyalty)}:name(-1: Deals 3 damage and transform) ability$!name(Choose one) choice name(Damage player) damage:3 target(player) _ choice name(Damage creature) damage:3 target(creature) _ choice name(Damage planeswalker) damage:3 target(planeswalker)!$ controller && all(this) flip(Arlinn Kord)
|
||||
auto={C(0/0,-6,Loyalty)}:name(-6: Emblem: Creatures get ability powerstrike) emblem transforms((,newability[lord(creature|mybattlefield) {T}:target(creature,player) dynamicability<!powerstrike!>],newability[lord(creature|mybattlefield) haste])) forever dontremove
|
||||
auto={C(0/0,-6,Loyalty)}:name(-6: Emblem: Creatures get ability powerstrike) emblem transforms((,newability[lord(creature|mybattlefield) transforms((,newability[{T}:target(creature) dynamicability<!powerstrike!>]))],newability[lord(creature|mybattlefield) haste])) forever dontremove
|
||||
text=+1: Creatures you control get +1/+1 and gain trample until end of turn. -- -1: Arlinn, Embraced by the Moon deals 3 damage to target creature or player. Transform Arlinn, Embraced by the Moon. -- -6: You get an emblem with "Creatures you control have haste and '{T}: This creature deals damage equal to its power to target creature or player.'"
|
||||
type=Legendary Planeswalker
|
||||
subtype=Arlinn
|
||||
@@ -288,7 +288,7 @@ name=Ashiok, Dream Render
|
||||
auto=counter(0/0,5,loyalty)
|
||||
auto=lord(*|opponentlibrary) shroud
|
||||
auto={C(0/0,-1,Loyalty)}:name(-1: Target opponent mils four and exile his or her graveyard) target(player) deplete:4 && moveTo(exile) all(*|opponentgraveyard)
|
||||
text=Spells and abilities your opponents control can't cause their controller to search their library. -- -1: Target player puts the top four cards of their library into their graveyard. Then exile each opponent's graveyard.
|
||||
text=Spells and abilities your opponents control can't cause their controller to search their library. -- -1: Target player mills four cards. Then exile each opponent's graveyard.
|
||||
mana={1}{UB}{UB}
|
||||
type=Legendary Planeswalker
|
||||
subtype=Ashiok
|
||||
@@ -338,10 +338,10 @@ subtype=Ashiok
|
||||
[card]
|
||||
name=Ashiok, Sculptor of Fears
|
||||
auto=counter(0/0,5,loyalty)
|
||||
auto={C(0/0,2,Loyalty)}:name(+2: Draw a card and put two cards...) draw:1 controller && deplete:2 opponent deplete:2 controller
|
||||
auto={C(0/0,2,Loyalty)}:name(+2: Draw a card and put two cards...) draw:1 controller && all(player) deplete:2
|
||||
auto={C(0/0,-5,Loyalty)}:name(-5: Return target creature from graveyars) moveTo(myBattlefield) target(creature|Graveyard)
|
||||
auto={C(0/0,-11,Loyalty)}:name(-11: Gain control of all creatures..) moveTo(myBattlefield) all(creature|opponentBattlefield)
|
||||
text=+2: Draw a card. Each player puts the top two cards of their library into their graveyard. -- -5: Put target creature card from a graveyard onto the battlefield under your control. -- -11: Gain control of all creatures target opponent controls.
|
||||
text=+2: Draw a card. Each player mills two cards. -- -5: Put target creature card from a graveyard onto the battlefield under your control. -- -11: Gain control of all creatures target opponent controls.
|
||||
mana={4}{U}{B}
|
||||
type=Legendary Planeswalker
|
||||
subtype=Ashiok
|
||||
@@ -351,7 +351,7 @@ name=B.O.B. (Bevy of Beebles)
|
||||
auto=counter(0/0,4,Loyalty)
|
||||
auto=token(Beeble,Creature Beeble,1/1,blue)*4
|
||||
auto=@counteradded(0/0,1,Loyalty) from(this):token(Beeble,Creature Beeble,1/1,blue)
|
||||
auto=@counterremoved(0/0,1,Loyalty) from(this):sacrifice target(beeble|myBattlefield)
|
||||
auto=@counterremoved(0/0,1,Loyalty) from(this):sacrifice notAtarget(beeble|myBattlefield)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: X Beebles can't be blocked) target(<type:*:myHand>creature[Beeble]|myBattlefield) transforms((,newability[unblockable])) ueot
|
||||
auto={C(0/0,-1,Loyalty)}:name(-1: Draw a card) draw:1 controller
|
||||
text=As B.O.B. enters the battlefield, create four 1/1 blue Beeble creature tokens. -- The number of loyalty counters on B.O.B. is equal to the number of Beebles you control. (Create or sacrifice Beebles whenever B.O.B. gains or loses loyalty.) -- +1: Up to X target Beebles can't be blocked this turn, where X is the number of cards in your hand. -- -1: Draw a card.
|
||||
@@ -625,7 +625,7 @@ subtype=Chandra
|
||||
[card]
|
||||
name=Chandra, Torch of Defiance
|
||||
auto=counter(0/0,4,loyalty)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Exile Top Card) all(*[zpos=1|mylibrary) moveto(myexile) and!( transforms((,newability[choice name(Deals 2 damage) name(Deals 2 damage) damage:2 opponent],newability[if cantargetcard(*[-land]|*) then choice name(Cast card from exile) name(Cast card from exile) counter(0/0.1.ChandraEffect) notrg])) ueot )!
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Exile Top Card) all(*[zpos=1]|mylibrary) moveto(myexile) and!( transforms((,newability[choice name(Deals 2 damage) name(Deals 2 damage) damage:2 opponent],newability[if cantargetcard(*[-land]|*) then choice name(Cast card from exile) name(Cast card from exile) counter(0/0.1.ChandraEffect) notrg])) ueot )!
|
||||
auto=lord(*[counter{0/0.1.ChandraEffect}]|myexile) canplayfromexile
|
||||
auto=@each endofturn:if type(*[counter{0/0.1.ChandraEffect}]|myexile)~morethan~0 then name(Effect ends) name(Effect ends) all(*[counter{0/0.1.ChandraEffect}]|myexile) removeallcounters(0/0.1.ChandraEffect)
|
||||
auto=@each endofturn:if type(*[counter{0/0.1.ChandraEffect}]|myexile)~morethan~0 then name(Deals 2 damage) name(Deals 2 damage) damage:2 opponent
|
||||
@@ -665,7 +665,7 @@ name=Daretti, Ingenious Iconoclast
|
||||
auto=counter(0/0,3,loyalty)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Create a 1/1 colorless Construct) token(Construct,Artifact Creature Construct,1/1,defender)
|
||||
auto={C(0/0,-1,Loyalty)}{S(artifact|mybattlefield)}:name(-1: Sacrifice artifact to destroy) target(creature,artifact|battlefield) destroy
|
||||
auto={C(0/0,-6,Loyalty)}:name(-6: Create three copies of an artifact...) target(artifact|graveyard,battlefield) clone && clone && clone
|
||||
auto={C(0/0,-6,Loyalty)}:name(-6: Create three copies of an artifact) name(Create three tokens) target(artifact|graveyard,battlefield) transforms((,newability[clone controller] ,newability[clone controller],newability[clone controller]))
|
||||
text=+1: Create a 1/1 colorless Construct artifact creature token with defender. -- -1: You may sacrifice an artifact. If you do, destroy target artifact or creature. -- -6: Choose target artifact card in a graveyard or artifact on the battlefield. Create three tokens that are copies of it.
|
||||
mana={1}{B}{R}
|
||||
type=Legendary Planeswalker
|
||||
@@ -724,9 +724,9 @@ name=Domri, Chaos Bringer
|
||||
auto=counter(0/0,5,loyalty)
|
||||
aicode=activate moveto(myHand) target(creature[zpos=2]|myLibrary)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Add red if its a creature, Riot) add{R} && if type(creature|myStack)~morethan~0 then ability$!name(Choose one) choice name(Put a +1/1 counter) counter(1/1) target(creature[fresh]|myBattlefield) _ choice name(Gain Haste) haste target(creature[fresh]|myBattlefield)!$ controller
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Add green if its a creature, Riot) add{G} && if type(creature|myStack)~morethan~0 then ability$!name(Choose one) choice name(Put a +1/1 counter) counter(1/1) target(creature[fresh]|myBattlefield) _ choice name(Gain Haste) haste target(creature[fresh]|myBattlefield)!$ controller !$ controller
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Add green if its a creature, Riot) add{G} && if type(creature|myStack)~morethan~0 then ability$!name(Choose one) choice name(Put a +1/1 counter) counter(1/1) target(creature[fresh]|myBattlefield) _ choice name(Gain Haste) haste target(creature[fresh]|myBattlefield)!$ controller
|
||||
auto={C(0/0,-3,Loyalty)}:name(-3: Reveal four and put up to two creature) name(Look your Library) reveal:4 optionone name(Get a card) target(<upto:2>*[creature]|reveal) moveto(myhand) optiononeend optiontwo name(put on bottom) target(<4>*|reveal) bottomoflibrary optiontwoend revealend
|
||||
auto={C(0/0,-8,Loyalty)}:name(-8: Emblem: "Each end of turn create a 4/4 Beast) emblem transforms((,newability[@each endofturn: token(Beast,Creature Beast,4/4,red,green,trample)])) forever dontrevome
|
||||
auto={C(0/0,-8,Loyalty)}:name(-8: Emblem: "Each end of turn create a 4/4 Beast) emblem transforms((,newability[@each endofturn: create(Beast:Creature Beast:4/4:red:green:trample)])) forever dontrevome
|
||||
text=+1: Add {R} or {G}. If that mana is spent on a creature spell, it gains riot. (It enters the battlefield with your choice of a +1/+1 counter or haste.) -- −3: Look at the top four cards of your library. You may reveal up to two creature cards from among them and put them into your hand. Put the rest on the bottom of your library in a random order. -- −8: You get an emblem with "At the beginning of each end step, create a 4/4 red and green Beast creature token with trample."
|
||||
mana={2}{R}{G}
|
||||
type=Legendary Planeswalker
|
||||
@@ -813,6 +813,18 @@ type=Legendary Planeswalker
|
||||
subtype=Ellywick
|
||||
[/card]
|
||||
[card]
|
||||
name=Elminster
|
||||
abilities=canbecommander
|
||||
auto=counter(0/0,5,loyalty)
|
||||
auto=@scryed(*|mybattlefield,mystack):name(Next spell cost less) target(*[instant;sorcery]|myhand) transforms((,newability[changecost(colorless:-scryedcards) forcedalive])) ueot
|
||||
auto={C(0/0,+2,Loyalty)}:name(Draw and scry) draw:1 && _SCRY2_
|
||||
auto={C(0/0,−3,Loyalty)}:name(Exile top card) all(*[zpos=1]|mylibrary) moveto(myexile) and!( transforms((,newability[name(Create faeries) token(Faerie^Creature Faerie Dragon^1/1^blue)*manacost])) oneshot )!
|
||||
text=Whenever you scry, the next instant or sorcery spell you cast this turn costs {X} less to cast, where X is the number of cards looked at while scrying this way. -- [+2]: Draw a card, then scry 2. -- [−3]: Exile the top card of your library. Create a number of 1/1 blue Faerie Dragon creature tokens with flying equal to that card's mana value. -- Elminster can be your commander.
|
||||
mana={3}{W}{U}
|
||||
type=Legendary Planeswalker
|
||||
subtype=Elminster
|
||||
[/card]
|
||||
[card]
|
||||
name=Elspeth, Knight-Errant
|
||||
auto=counter(0/0,4,loyalty)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Create a 1/1 soldier) _SOLDIERTOKEN_
|
||||
@@ -1235,7 +1247,7 @@ name=Inzerva, Master of Insights
|
||||
aicode=activate target(*[zpos<=2]|opponentLibrary) moveto(opponentreveal) and!( bottomoflibrary )!
|
||||
auto=counter(0/0,4,loyalty)
|
||||
auto={C(0/0,+2,Loyalty)}:name(+2: Draw 2 cards and discard) draw:2 && transforms((,newability[reject notatarget(*|myhand)])) oneshot
|
||||
auto={C(0/0,-2,Loyalty)}:name(-2: Look at opponent library and scry 2) reveal:2 revealzone(opponentlibrary) optionone name(Put on top) target(<upto:2>*|reveal) moveto(ownerlibrary) optiononeend optiontwo name(Put on bottom) target(<2>*|reveal) bottomoflibrary optiontwoend afterrevealed name(Scry 2) _SCRY_(2) afterrevealedend revealend
|
||||
auto={C(0/0,-2,Loyalty)}:name(-2: Look at opponent library and scry 2) reveal:2 revealzone(opponentlibrary) optionone name(Put on top) target(<upto:2>*|reveal) moveto(ownerlibrary) optiononeend optiontwo name(Put on bottom) target(<2>*|reveal) bottomoflibrary optiontwoend afterrevealed name(Scry 2) _SCRY2_ afterrevealedend revealend
|
||||
auto={C(0/0,-4,Loyalty)}:name(-4: Emblem: Draw to deal damage) emblem transforms((,newability[lord(*|opponentBattlefield) showcontrollerhand],newability[lord(*|myBattlefield) showopponenthand],newability[@drawfoeof(player):name(Damage opponent) damage:1 opponent] )) forever dontremove
|
||||
text=+2: Draw two cards, then discard a card. -- −2: Look at the top two cards of each other player's library, then put any number of them on the bottom of that library and the rest on top in any order. Scry 2. -- −4: You get an emblem with "Your opponents play with their hands revealed" and "Whenever an opponent draws a card, this emblem deals 1 damage to them."
|
||||
mana={1}{2U}{2R}
|
||||
@@ -1269,7 +1281,7 @@ subtype=Jace
|
||||
[card]
|
||||
name=Jace Beleren
|
||||
auto=counter(0/0,3,loyalty)
|
||||
auto={C(0/0,2,Loyalty)}:name(+2: Each player draw) draw:1 controller && draw:1 opponent
|
||||
auto={C(0/0,2,Loyalty)}:name(+2: Each player draw) all(player) draw:1
|
||||
auto={C(0/0,-1,Loyalty)}:name(-1: Target player draw a card) draw:1 target(player)
|
||||
auto={C(0/0,-10,Loyalty)}:name(-10: Target player mils twenty) deplete:20 target(player)
|
||||
text=+2: Each player draws a card. -- -1: Target player draws a card. -- -10: Target player puts the top twenty cards of his or her library into his or her graveyard.
|
||||
@@ -1307,7 +1319,7 @@ auto=counter(0/0,4,loyalty)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Target player mils and draw) deplete:1 target(player) && draw:1 controller
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Target player mils ten) deplete:10 target(player)
|
||||
auto={C(0/0,-7,Loyalty)}:name(-7: Target players draw twenty cards) target(<anyamount>player) draw:20
|
||||
text=+1: Draw a card. Target player puts the top card of his or her library into his or her graveyard. -- 0: Target player puts the top ten cards of his or her library into his or her graveyard. -- -7: Any number of target players each draw twenty cards.
|
||||
text=+1: Draw a card. Target player mills a card. -- 0: Target player puts the top ten cards of his or her library into his or her graveyard. -- -7: Any number of target players each draw twenty cards.
|
||||
mana={3}{U}{U}
|
||||
type=Legendary Planeswalker
|
||||
subtype=Jace
|
||||
@@ -1319,7 +1331,7 @@ auto=counter(0/0,1,loyalty)
|
||||
auto=if paid(kicker) then clone options(nolegend)
|
||||
auto=if casted(this) then counter(0/0,3,loyalty)
|
||||
aicode=activate transforms((,newability[all(*[zpos<=2]|mylibrary) transforms((,newability[may name(Put on bottom of library) moveto(myreveal) and!( bottomoflibrary )!])) oneshot])) oneshot
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Scry 2) _SCRY_(2)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Scry 2) _SCRY2_
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Draw 1 and remove Loyalty counters) draw:1 restriction{type(*[manacost=0;zpos=1]|mylibrary)~morethan~0}
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Draw 1 and remove Loyalty counters) draw:1 && counter(0/0,-1,loyalty) restriction{type(*[manacost=1;zpos=1]|mylibrary)~morethan~0}
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Draw 1 and remove Loyalty counters) draw:1 && counter(0/0,-2,loyalty) restriction{type(*[manacost=2;zpos=1]|mylibrary)~morethan~0}
|
||||
@@ -1330,7 +1342,7 @@ auto={C(0/0,0,Loyalty)}:name(+0: Draw 1 and remove Loyalty counters) draw:1 && c
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Draw 1 and remove Loyalty counters) draw:1 && counter(0/0,-7,loyalty) restriction{type(*[manacost=7;zpos=1]|mylibrary)~morethan~0}
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Draw 1 and remove Loyalty counters) draw:1 && counter(0/0,-8,loyalty) restriction{type(*[manacost=8;zpos=1]|mylibrary)~morethan~0}
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Draw 1 and remove Loyalty counters) draw:1 && counter(0/0,-9,loyalty) restriction{type(*[manacost=9;zpos=1]|mylibrary)~morethan~0}
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Draw 1 and remove Loyalty counters) draw:1 && counter(0/0,-10,loyalty) restriction{type(*[manacost=10;zpos=1]|mylibrary)~morethan~0
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Draw 1 and remove Loyalty counters) draw:1 && counter(0/0,-10,loyalty) restriction{type(*[manacost=10;zpos=1]|mylibrary)~morethan~0}
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Draw 1 and remove Loyalty counters) draw:1 && counter(0/0,-11,loyalty) restriction{type(*[manacost=11;zpos=1]|mylibrary)~morethan~0}
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Draw 1 and remove Loyalty counters) draw:1 && counter(0/0,-12,loyalty) restriction{type(*[manacost=12;zpos=1]|mylibrary)~morethan~0}
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Draw 1 and remove Loyalty counters) draw:1 && counter(0/0,-13,loyalty) restriction{type(*[manacost=13;zpos=1]|mylibrary)~morethan~0}
|
||||
@@ -1402,7 +1414,7 @@ auto=counter(0/0,4,loyalty)
|
||||
auto=@drawof(player) restriction{type(*|mylibrary)~equalto~0}:wingame
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Target player milss two and draws a card) target(player) deplete:2 && draw:1
|
||||
auto={C(0/0,-8,Loyalty)}:name(-8: Draw seven cards if no cards are in library win the game) if type(*|mylibrary)~lessthan~8 then wingame else draw:7
|
||||
text=If you would draw a card while your library has no cards in it, you win the game instead. -- +1: Target player puts the top two cards of their library into their graveyard. Draw a card. -- -8: Draw seven cards. Then if your library has no cards in it, you win the game.
|
||||
text=If you would draw a card while your library has no cards in it, you win the game instead. -- +1: Target player mills two cards. Draw a card. -- -8: Draw seven cards. Then if your library has no cards in it, you win the game.
|
||||
mana={1}{U}{U}{U}
|
||||
type=Legendary Planeswalker
|
||||
subtype=Jace
|
||||
@@ -1532,7 +1544,7 @@ subtype=Karn
|
||||
name=Kasmina, Enigma Sage
|
||||
auto=counter(0/0,2,Loyalty)
|
||||
aicode=activate transforms((,newability[all(*[zpos<=1]|mylibrary) transforms((,newability[may name(Put on bottom of library) moveto(myreveal) and!( bottomoflibrary )!])) oneshot])) oneshot
|
||||
auto={C(0/0.2.Loyalty)}:limit:1 name(+2: Scry 1) _SCRY_(1)
|
||||
auto={C(0/0.2.Loyalty)}:limit:1 name(+2: Scry 1) _SCRY1_
|
||||
auto={C(0/0.-1.Loyalty)}:limit:1 name(-1: Create fractal with 1 counter) token(Fractal^Creature Fractal^0/0^green^blue) and!( counter(1/1) )!
|
||||
auto={C(0/0.-2.Loyalty)}:limit:1 name(-2: Create fractal with 2 counter) token(Fractal^Creature Fractal^0/0^green^blue) and!( counter(1/1.2) )!
|
||||
auto={C(0/0.-3.Loyalty)}:limit:1 name(-3: Create fractal with 3 counter) token(Fractal^Creature Fractal^0/0^green^blue) and!( counter(1/1.3) )!
|
||||
@@ -1554,7 +1566,7 @@ auto={C(0/0.-18.Loyalty)}:limit:1 name(-18: Create fractal with 18 counter) toke
|
||||
auto={C(0/0.-19.Loyalty)}:limit:1 name(-19: Create fractal with 19 counter) token(Fractal^Creature Fractal^0/0^green^blue) and!( counter(1/1.19) )!
|
||||
auto={C(0/0.-20.Loyalty)}:limit:1 name(-20: Create fractal with 20 counter) token(Fractal^Creature Fractal^0/0^green^blue) and!( counter(1/1.20) )!
|
||||
auto={C(0/0.-8.Loyalty)}:limit:1 name(-8: Search instant or sorcery) target(*[instant;sorcery;share!color!]|mylibrary) moveto(myexile) and!( transforms((,newability[canplayfromexile],newability[zerocast],newability[@each untap:canplayfromexile],newability[@each untap:zerocast])) forever )!
|
||||
auto=lord(other planeswalker|mybattlefield) transforms((,newability[{C(0/0.2.Loyalty)}:limit:1 name(+2: Scry 1) _SCRY_(1)]))
|
||||
auto=lord(other planeswalker|mybattlefield) transforms((,newability[{C(0/0.2.Loyalty)}:limit:1 name(+2: Scry 1) _SCRY1_]))
|
||||
auto=lord(other planeswalker|mybattlefield) transforms((,newability[{C(0/0.-1.Loyalty)}:limit:1 name(-1: Create fractal with 1 counter) token(Fractal^Creature Fractal^0/0^green^blue) and!( counter(1/1) )!]))
|
||||
auto=lord(other planeswalker|mybattlefield) transforms((,newability[{C(0/0.-2.Loyalty)}:limit:1 name(-2: Create fractal with 2 counter) token(Fractal^Creature Fractal^0/0^green^blue) and!( counter(1/1.2) )!]))
|
||||
auto=lord(other planeswalker|mybattlefield) transforms((,newability[{C(0/0.-3.Loyalty)}:limit:1 name(-3: Create fractal with 3 counter) token(Fractal^Creature Fractal^0/0^green^blue) and!( counter(1/1.3) )!]))
|
||||
@@ -1616,7 +1628,7 @@ subtype=Kaya
|
||||
[card]
|
||||
name=Kaya, Ghost Assassin
|
||||
auto=counter(0/0,5,loyalty)
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Exile Kaya or creature) ability$!name(Choose creature or this) choice name(Kaya, Ghost Assassin) all(this) (blink)ueot && life:-2 controller _choice name(Creature) target(creature) (blink)ueot && life:-2 controller!$ controller
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Exile Kaya or creature) ability$!name(Choose creature or this) choice name(Kaya, Ghost Assassin) all(this) (blink)ueot && life:-2 controller _choice name(Creature) target(creature) (blink)ueot controller!$ controller && life:-2
|
||||
auto={C(0/0,-1,Loyalty)}:name(-1: Each opponent loses life and you gain) life:-2 opponent && life:2 controller
|
||||
auto={C(0/0,-2,Loyalty)}:name(-2: Each opponent discard and draw) ability$!name(discard a card) notatarget(*|myHand) reject!$ opponent && draw:1 controller
|
||||
text=0: Exile Kaya, Ghost Assassin or up to one target creature. Return that card to the battlefield under its owner's control at the beginning of your next upkeep. You lose 2 life. -- -1: Each opponent loses 2 life and you gain 2 life. -- -2: Each opponent discards a card and you draw a card.
|
||||
@@ -1742,7 +1754,7 @@ auto=counter(0/0,6,loyalty)
|
||||
auto=@movedTo(creature|Graveyard) from(mybattlefield):name(Draw a card) draw:1 controller
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Create a 2/2 Zombie) _ZOMBIETOKEN_
|
||||
auto={C(0/0,-4,Loyalty)}:name(-4: Each player sacrifices two creatures) transforms((,newability[name(Sacrifice 2 creatures) target(<2>creature|mybattlefield) sacrifice],newability[ability$!name(Sacrifice 2 creatures) name(Sacrifice 2 creatures) target(<2>creature|mybattlefield) sacrifice!$ opponent])) forever
|
||||
auto={C(0/0,-9,Loyalty)}:name(-9: Opponent sacrifices permanents) transforms((,newability[if type(land|opponentBattlefield)~morethan~1 then ability$!name(Sacrifice all lands except one) name(Sacrifice all lands except one) sacrifice target(<type:land:myBattlefieldminus1minusend>land|mybattlefield)!$ opponent],newability[if type(creature|opponentBattlefield)~morethan~1 then ability$!name(Sacrifice all creatures except one) name(Sacrifice all creatures except one) sacrifice notatarget(<type:creature:myBattlefieldminus1minusend>creature|mybattlefield)!$ opponent],newability[if type(enchantment|opponentBattlefield)~morethan~1 then ability$!name(Sacrifice all enchantments except one) name(Sacrifice all enchantments except one) sacrifice notatarget(<type:enchantment:myBattlefieldminus1minusend>enchantment|mybattlefield)!$ opponent],newability[if type(artifact|opponentBattlefield)~morethan~1 then ability$!name(Sacrifice all artifacts except one) name(Sacrifice all artifacts except one) sacrifice notatarget(<type:artifact:myBattlefieldminus1minusend>artifact|mybattlefield)!$ opponent],newability[if type(planeswalker|opponentBattlefield)~morethan~1 then ability$!name(Sacrifice all planeswalkers except one) name(Sacrifice all planeswalkers except one) sacrifice notatarget(<type:planeswalker:myBattlefieldminus1minusend>planeswalker|mybattlefield)!$ opponent])) forever
|
||||
auto={C(0/0,-9,Loyalty)}:name(-9: Opponent sacrifices permanents) transforms((,newability[if type(land|opponentBattlefield)~morethan~1 then ability$!name(Sacrifice all lands except one) name(Sacrifice all lands except one) sacrifice notAtarget(<type:land:myBattlefieldminus1minusend>land|mybattlefield)!$ opponent],newability[if type(creature|opponentBattlefield)~morethan~1 then ability$!name(Sacrifice all creatures except one) name(Sacrifice all creatures except one) sacrifice notatarget(<type:creature:myBattlefieldminus1minusend>creature|mybattlefield)!$ opponent],newability[if type(enchantment|opponentBattlefield)~morethan~1 then ability$!name(Sacrifice all enchantments except one) name(Sacrifice all enchantments except one) sacrifice notatarget(<type:enchantment:myBattlefieldminus1minusend>enchantment|mybattlefield)!$ opponent],newability[if type(artifact|opponentBattlefield)~morethan~1 then ability$!name(Sacrifice all artifacts except one) name(Sacrifice all artifacts except one) sacrifice notatarget(<type:artifact:myBattlefieldminus1minusend>artifact|mybattlefield)!$ opponent],newability[if type(planeswalker|opponentBattlefield)~morethan~1 then ability$!name(Sacrifice all planeswalkers except one) name(Sacrifice all planeswalkers except one) sacrifice notatarget(<type:planeswalker:myBattlefieldminus1minusend>planeswalker|mybattlefield)!$ opponent])) forever
|
||||
text=Whenever a creature you control dies, draw a card. -- +1: Create a 2/2 black Zombie creature token. -- -4: Each player sacrifices two creatures. -- -9: Each opponent chooses a permanent they control of each permanent type and sacrifices the rest.
|
||||
mana={4}{B}{B}
|
||||
type=Legendary Planeswalker
|
||||
@@ -1844,7 +1856,7 @@ auto=counter(0/0,5,loyalty)
|
||||
aicode=activate moveto(mylibrary) and!(moveto(mylibrary))! target(*|mylibrary)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Target player discards a card) target(player) ability$!name(discard) target(*|myhand) reject!$ targetedplayer
|
||||
auto={C(0/0,-2,Loyalty)}:name(-2: Search a card from library and put on top) reveal:plibrarycount optionone name(choose card) target(*|reveal) moveto(ownerlibrary) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put back) target(<1>*|reveal) moveto(ownerlibrary) and!( all(*|reveal) moveto(ownerlibrary) and!(shuffle)! )! optiontwoend afterrevealed all(tobecast|mylibrary) moveto(mylibrary) and!(moveto(mylibrary))! afterrevealedend revealend
|
||||
auto={C(0/0,-8,Loyalty)}:name(-8: Reanimate all your creatures) moveTo(mybattlefield) all(creature|graveyard)
|
||||
auto={C(0/0,-8,Loyalty)}:name(-8: Reanimate all creatures) moveTo(mybattlefield) all(creature|graveyard)
|
||||
text=+1: Target player discards a card. -- -2: Search your library for a card, then shuffle your library and put that card on top of it. -- -8: Put all creature cards in all graveyards onto the battlefield under your control.
|
||||
mana={3}{B}{B}
|
||||
type=Legendary Planeswalker
|
||||
@@ -1853,7 +1865,7 @@ subtype=Liliana
|
||||
[card]
|
||||
name=Liliana, Waker of the Dead
|
||||
auto=counter(0/0,4,loyalty)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Each player discard card or loses 3 life) transforms((,newability[if type(*|opponenthand)~lessthan~1 then life:-3 opponent else ability$!name(Discard a card) target(*|myhand) reject!$ opponent],newability[if type(*|myhand)~lessthan~1 then life:-3 controller else ability$!name(Discard a card) target(*|myhand) reject!$ controller])) oneshot
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Each player discard card or loses 3 life) transforms((,newability[if type(*|opponenthand)~lessthan~1 then life:-3 opponent else ability$!name(Discard a card) target(*|myhand) reject!$ opponent],newability[name(Discard a card) target(*|myhand) reject])) oneshot
|
||||
auto={C(0/0,-3,Loyalty)}:name(-3: Target creature gets -X/-X) target(creature) -type:*:myGraveyard/-type:*:myGraveyard ueot
|
||||
auto={C(0/0,-7,Loyalty)}:name(-7: Emblem: "Return target creature from a graveyard") emblem transforms((,newability[@movedTo(creature|mybattlefield) from(graveyard) restriction{combatbeginsonly}:all(trigger) haste],newability[@each my combatbegins:target(creature|graveyard) moveTo(myBattlefield)])) forever dontremove
|
||||
text=+1: Each player discards a card. Each opponent who can't loses 3 life. -- -3: Target creature gets -X/-X until end of turn, where X is the number of cards in your graveyard. -- -7: You get an emblem with "At the beginning of combat on your turn, put target creature card from a graveyard onto the battlefield under your control. It gains haste."
|
||||
@@ -1912,6 +1924,21 @@ type=Legendary Planeswalker
|
||||
subtype=Lukka
|
||||
[/card]
|
||||
[card]
|
||||
name=Minsc & Boo, Timeless Heroes
|
||||
abilities=canbecommander
|
||||
auto=counter(0/0,3,loyalty)
|
||||
auto=may name(Create Boo) token(Boo,Legendary Creature Hamster,1/1,red,trample,haste)
|
||||
auto=@each my upkeep:may name(Create Boo) token(Boo,Legendary Creature Hamster,1/1,red,trample,haste)
|
||||
auto={C(0/0,+1,Loyalty)}:name(Don't put counters) donothing
|
||||
auto={C(0/0,+1,Loyalty)}:name(Put 1/1 counters) target(creature[trample;haste]) counter(1/1,3)
|
||||
auto={C(0/0,−2,Loyalty)}{S(creature[-hamster]|mybattlefield)}:name(Sacrifice a non hamster creature) target(player,creature,planeswalker) damage:storedpower
|
||||
auto={C(0/0,−2,Loyalty)}{S(creature[hamster]|mybattlefield)}:name(Sacrifice a hamster) target(player,creature,planeswalker) damage:storedpower && draw:storedpower controller
|
||||
text=When Minsc & Boo, Timeless Heroes enters the battlefield and at the beginning of your upkeep, you may create Boo, a legendary 1/1 red Hamster creature token with trample and haste. -- [+1]: Put three +1/+1 counters on up to one target creature with trample or haste. -- [−2]: Sacrifice a creature. When you do, Minsc & Boo, Timeless Heroes deals X damage to any target, where X is that creature's power. If the sacrificed creature was a Hamster, draw X cards. -- Minsc & Boo, Timeless Heroes can be your commander.
|
||||
mana={2}{R}{G}
|
||||
type=Legendary Planeswalker
|
||||
subtype=Minsc
|
||||
[/card]
|
||||
[card]
|
||||
name=Mordenkainen
|
||||
auto=counter(0/0,5,Loyalty)
|
||||
auto={C(0/0,2,Loyalty)}:name(+2: Draw 2 cards) draw:2 && transforms((,newability[name(Put on bottom) target(*|myhand) bottomoflibrary])) forever
|
||||
@@ -2087,7 +2114,7 @@ subtype=Bolas
|
||||
[card]
|
||||
name=Nicol Bolas, the Deceiver
|
||||
auto=counter(0/0,5,loyalty)
|
||||
auto={C(0/0,3,Loyalty)}:name(+3: Loses 3 life unless discard or sacrifices permanent) ability$!choice life:-3 controller choice sacrifice notatarget(*[-land]|mybattlefield) choice target(*|myhand) reject$! opponent
|
||||
auto={C(0/0,3,Loyalty)}:name(+3: Loses 3 life unless discard or sacrifices permanent) ability$!choice life:-3 controller choice sacrifice notatarget(*[-land]|mybattlefield) choice target(*|myhand) reject!$ opponent
|
||||
auto={C(0/0,-3,Loyalty)}:name(-3: Destroy target creature and draw a card) destroy target(creature) and!(draw:1 controller)!
|
||||
auto={C(0/0,-11,Loyalty)}:name(-11: Deals 7 damage and draw 7) damage:7 opponent and!(draw:7 controller)!
|
||||
text=+3: Each opponent loses 3 life unless that player sacrifices a nonland permanent or discards a card. -- -3: Destroy target creature. Draw a card. -- -11: Nicol Bolas, the Deceiver deals 7 damage to each opponent. You draw seven cards.
|
||||
@@ -2173,7 +2200,7 @@ subtype=Nissa
|
||||
name=Nissa, Steward of Elements
|
||||
auto=counter(0/0,X,loyalty)
|
||||
aicode=activate transforms((,newability[if type(creature[manacost<=hascntloyalty;zpos=1]|mylibrary)~morethan~0 then all(*[zpos<=1]|mylibrary) name(Put on battlefield) moveto(mybattlefield)],newability[if type(land[zpos=1]|mylibrary)~morethan~0 then all(*[zpos<=1]|mylibrary) name(Put on battlefield) moveto(mybattlefield)])) oneshot
|
||||
auto={C(0/0,2,Loyalty)}:name(+2: Scry 2) _SCRY_(2)
|
||||
auto={C(0/0,2,Loyalty)}:name(+2: Scry 2) _SCRY2_
|
||||
auto={C(0/0,0,Loyalty)}: restriction{type(land[zpos=1]|mylibrary)~morethan~0} name(+0: Look top card) reveal:1 optionone name(Put on battlefield) target(<upto:1>land|reveal) moveto(mybattlefield) optiononeend optiontwo name(Put back) target(*|reveal) moveto(mylibrary) optiontwoend revealend
|
||||
auto={C(0/0,0,Loyalty)}: restriction{type(creature[zpos=1]|mylibrary)~morethan~0} name(+0: Look top card) reveal:1 optionone name(Put on battlefield) target(<upto:1>creature[manacost<=hascntloyalty]|reveal) moveto(mybattlefield) optiononeend optiontwo name(Put back) target(*|reveal) moveto(mylibrary) optiontwoend revealend
|
||||
auto={C(0/0,0,Loyalty)}: restriction{type(*[-creature;-land;zpos=1]|mylibrary)~morethan~0} name(+0: Look top card)) reveal:1 optionone name(Put back) target(*|reveal) moveto(mylibrary) optiononeend optiontwo name(Put back) all(*|reveal) moveto(mylibrary) optiontwoend revealend
|
||||
@@ -2247,7 +2274,7 @@ abilities=canbecommander
|
||||
auto=counter(0/0,3,loyalty)
|
||||
auto={C(0/0,2,Loyalty)}:name(+2: Each opponent loses 1 life...) life:-1 opponent && life:1 controller
|
||||
auto={C(0/0,-2,Loyalty)}:name(-2: Create a 5/5 black Demon with flying...) token(Demon,Creature Demon,5/5,black,flying) && life:-2 controller
|
||||
auto={C(0/0,-8,Loyalty)}:name(-8: Emblem: "{1}{B}, sacrifice a creature: Draw X and gain X life") emblem transforms((,newability[{1}{B}{S(creature|myBattlefield}:draw:storedpower && life:storedpower])) forever dontremove
|
||||
auto={C(0/0,-8,Loyalty)}:name(-8: Emblem: "{1}{B}, sacrifice a creature: Draw X and gain X life") emblem transforms((,newability[{1}{B}{S(creature|myBattlefield)}:draw:storedpower && life:storedpower])) forever dontremove
|
||||
text=+2: Each opponent loses 1 life. You gain life equal to the life lost this way. -- -2: Create a 5/5 black Demon creature token with flying. You lose 2 life. -- -8: You get an emblem with "{1}{B}, Sacrifice a creature: You gain X life and draw X cards, where X is the sacrificed creature's power." -- Ob Nixilis of the Black Oath can be your commander.
|
||||
mana={3}{B}{B}
|
||||
type=Legendary Planeswalker
|
||||
@@ -2349,7 +2376,7 @@ name=Ral, Storm Conduit
|
||||
auto=counter(0/0,4,loyalty)
|
||||
aicode=activate transforms((,newability[all(*[zpos<=1]|mylibrary) transforms((,newability[may name(Put on bottom of library) moveto(myreveal) and!( bottomoflibrary )!])) oneshot])) oneshot
|
||||
auto=@movedTo(*[instant;sorcery]|myStack):ability$!name(Choose one) choice name(Damage opponent) damage:1 target(opponent) _ choice name(Damage Planeswalker) damage:1 target(planeswalker)!$ controller
|
||||
auto={C(0/0,2,Loyalty)}:name(+2: Scry: 1) _SCRY_(1)
|
||||
auto={C(0/0,2,Loyalty)}:name(+2: Scry: 1) _SCRY1_
|
||||
auto={C(0/0,-2,Loyalty)}:name(-2: Whenever cast instant or sorcery copy spell) emblem transforms((,newability[@movedto(*[instant;sorcery]|myStack) turnlimited:all(trigger[to]) activate castcard(copied noevent)])) ueot
|
||||
text=Whenever you cast or copy an instant or sorcery spell, Ral, Storm Conduit deals 1 damage to target opponent or planeswalker. -- +2: Scry 1. -- −2: When you cast your next instant or sorcery spell this turn, copy that spell. You may choose new targets for the copy.
|
||||
mana={3}{U}{R}
|
||||
@@ -2370,7 +2397,7 @@ subtype=Ral
|
||||
[card]
|
||||
name=Rowan, Fearless Sparkmage
|
||||
auto=counter(0/0,5,loyalty)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: +3/+3 and First Strike) target(creature) 3/0 ueot && first strike ueot
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: +3/0 and First Strike) target(creature) 3/0 ueot && first strike ueot
|
||||
auto={C(0/0,-2,Loyalty)}:name(-2: Deals 1 damage and can't block) target(<upto:2>creature) damage:1 && cantblock ueot
|
||||
auto={C(0/0,-9,Loyalty)}:name(-9: Gain control of creatures) all(creature|battlefield) moveTo(mybattlefield) && all(creature|battlefield) transforms((,newability[phaseaction[endofturn sourceinplay] moveTo(ownerbattlefield)],newability[untap],haste)) ueot oneshot
|
||||
text=+1: Up to one target creature gets +3/+0 and gains first strike until end of turn. -- -2: Rowan, Fearless Sparkmage deals 1 damage to each of up to two target creatures. Those creatures can't block this turn. -- -9: Gain control of all creatures until end of turn. Untap them. They gain haste until end of turn.
|
||||
@@ -2398,7 +2425,7 @@ subtype=Rowan
|
||||
name=Saheeli Rai
|
||||
auto=counter(0/0,3,loyalty)
|
||||
aicode=activate transforms((,newability[all(*[zpos<=1]|mylibrary) transforms((,newability[may name(Put on bottom of library) moveto(myreveal) and!( bottomoflibrary )!])) oneshot])) oneshot
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Scry and deals 1 damage) _SCRY_(1) && damage:1 opponent
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Scry and deals 1 damage) _SCRY1_ && damage:1 opponent
|
||||
auto={C(0/0,-2,Loyalty)}:name(-2: Create a copy of artifact or creature) target(*[creature;artifact]|myBattlefield) clone with(treason,haste) addtype(artifact)
|
||||
auto={C(0/0,-7,Loyalty)}:name(-7: Search three different artifacts) reveal:plibrarycount optionone name(choose cards) target(<upto:3>artifact|reveal) moveto(ownerlibrary) and!( becomes(tobecast) ueot )! optiononeend optiontwo name(put back) target(<1>*|reveal) moveto(ownerlibrary) and!( all(*|reveal) moveto(ownerlibrary) and!(shuffle)! )! optiontwoend afterrevealed all(tobecast|mylibrary) moveto(ownerlibrary) and!(moveTo(myBattlefield))! afterrevealedend revealend
|
||||
text=+1: Scry 1. Saheeli Rai deals 1 damage to each opponent. -- −2: Create a token that's a copy of target artifact or creature you control, except it's an artifact in addition to its other types. That token gains haste. Exile it at the beginning of the next end step. -- −7: Search your library for up to three artifact cards with different names, put them onto the battlefield, then shuffle your library.
|
||||
@@ -2409,7 +2436,7 @@ subtype=Saheeli
|
||||
[card]
|
||||
name=Saheeli, Sublime Artificer
|
||||
auto=counter(0/0,5,loyalty)
|
||||
auto=@movedTo(*[-creature]|mystack):token(Servo,Artifact Creature Servo,1/1)
|
||||
auto=@movedTo(*[-creature]|mystack):_SERVOTOKEN_
|
||||
auto={C(0/0,-2,Loyalty)}:name(-2: Create a copy of target artifact) target(artifact) transforms((,newability[copy target(*[artifact;creature]|mybattlefield)],newability[becomes(artifact)])) ueot
|
||||
text=Whenever you cast a noncreature spell, create a 1/1 colorless Servo artifact creature token. -- -2: Target artifact you control becomes a copy of another target artifact or creature you control until end of turn, except it's an artifact in addition to its other types.
|
||||
mana={1}{UR}{UR}
|
||||
@@ -2420,7 +2447,7 @@ subtype=Saheeli
|
||||
name=Saheeli, the Gifted
|
||||
abilities=canbecommander
|
||||
auto=counter(0/0,4,loyalty)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Create a 1/1 colorless Servo) token(Servo,Artifact Creature Servo,1/1)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Create a 1/1 colorless Servo) _SERVOTOKEN_
|
||||
auto={C(0/0,-1,Loyalty)}:name(-1: The next spell has affinity for artifacts) lord(*|mycastingzone):affinityartifacts oneshot
|
||||
auto={C(0/0,-7,Loyalty)}:name(-7: Create a token for each artifact) clone all(artifact|mybattlefield) with (unreath)
|
||||
text=+1: Create a 1/1 colorless Servo artifact creature token. -- +1: The next spell you cast this turn costs {1} less to cast for each artifact you control as you cast it. -- -7: For each artifact you control, create a token that's a copy of it. Those tokens gain haste. Exile those tokens at the beginning of the next end step. -- Saheeli, the Gifted can be your commander.
|
||||
@@ -2445,7 +2472,7 @@ name=Samut, Tyrant Smasher
|
||||
auto=counter(0/0,5,loyalty)
|
||||
auto=lord(other creature|myBattlefield) haste
|
||||
aicode=activate transforms((,newability[all(*[zpos<=1]|mylibrary) transforms((,newability[may name(Put on bottom of library) moveto(myreveal) and!( bottomoflibrary )!])) oneshot])) oneshot
|
||||
auto={C(0/0,-1,Loyalty)}:name(-1: Creature gains +2/+1, haste and scry 1) target(creature) transforms((,newability[2/1],newability[haste])) ueot && _SCRY_(1)
|
||||
auto={C(0/0,-1,Loyalty)}:name(-1: Creature gains +2/+1, haste and scry 1) target(creature) transforms((,newability[2/1],newability[haste])) ueot && _SCRY1_
|
||||
text=Creatures you control have haste. -- -1: Target creature gets +2/+1 and gains haste until end of turn. Scry 1.
|
||||
mana={2}{RG}{RG}
|
||||
type=Legendary Planeswalker
|
||||
@@ -2465,7 +2492,7 @@ subtype=Sarkhan
|
||||
[card]
|
||||
name=Sarkhan, Fireblood
|
||||
auto=counter(0/0,3,loyalty)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Discard and draw) ability$!may reject notatarget(*|myhand) and!(draw:1)! !$ controller
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Discard and draw) ability$!may _DISCARD&DRAW_ !$ controller
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Add two mana in any combination of colors) if type(dragon|mycastingzone)~morethan~0 then thisforeach(variable{2}) ability$!name(add mana) choice add{G} _ choice add{R} _ choice add{U} _ choice add{B} _ choice add{W}!$ controller
|
||||
auto={C(0/0,-7,Loyalty)}:name(-7: Create four 5/5 Dragons) _DRAGONTOKEN_*4
|
||||
text=+1: You may discard a card. If you do, draw a card. -- +1: Add two mana in any combination of colors. Spend this mana only to cast Dragon spells. -- −7: Create four 5/5 red Dragon creature tokens with flying.
|
||||
@@ -2582,7 +2609,7 @@ subtype=Sorin
|
||||
[card]
|
||||
name=Sorin, Imperious Bloodlord
|
||||
auto=counter(0/0,4,loyalty)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Deathtouch and Lifelink a Vampire) target(creature[vampire]|myBattlefield) deathtouch ueot && lifelink ueotcounter(1/1) restriction{type(creature[vampire])
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Deathtouch and Lifelink a Vampire) target(creature[vampire]|myBattlefield) deathtouch ueot && lifelink ueotcounter(1/1) restriction{type(creature[vampire])}
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Deathtouch and Lifelink) target(creature[-vampire]|myBattlefield) deathtouch ueot && lifelink ueot
|
||||
auto={C(0/0,1,Loyalty)}{S(vampire|myBattlefield)}:name(+1: Sacrifice and deals 3 damage) damage:3 target(player,creature,planeswalker)
|
||||
auto={C(0/0,-3,Loyalty)}:name(-3: Put a Vampire from your hand onto the battlefield) moveto(myBattlefield) target(creature[vampire]|myHand)
|
||||
@@ -2716,6 +2743,18 @@ type=Legendary Planeswalker
|
||||
subtype=Tamiyo
|
||||
[/card]
|
||||
[card]
|
||||
name=Tasha, the Witch Queen
|
||||
abilities=canbecommander
|
||||
auto=counter(0/0,4,loyalty)
|
||||
auto=@movedTo(*|mystack) from(opponentzones):name(Create demon) token(Demon,Creature Demon,3/3,black)
|
||||
auto={C(0/0,+1,Loyalty)}:name(Draw a card) all(*[zpos=1]|mylibrary) moveto(myhand) and!( transforms((,newability[may name(Exile spell) target(*[instant;sorcery]|opponentgraveyard) moveto(exile) and!( counter(0/0.1.Page) )!])) oneshot )!
|
||||
auto={C(0/0,−3,Loyalty)}:name(Cast an exiled spell) target(*[-land;counter{0/0.1.Page}]|exile) activate castcard(normal)
|
||||
text=Whenever you cast a spell you don't own, create a 3/3 black Demon creature token. -- [+1]: Draw a card. For each opponent, exile up to one target instant or sorcery card from that player's graveyard and put a page counter on it. -- [−3]: You may cast a spell from among cards in exile with page counters on them without paying its mana cost. -- Tasha, the Witch Queen can be your commander.
|
||||
mana={3}{U}{B}
|
||||
type=Legendary Planeswalker
|
||||
subtype=Tasha
|
||||
[/card]
|
||||
[card]
|
||||
name=Teferi, Hero of Dominaria
|
||||
auto=counter(0/0,4,loyalty)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Draw a card and untap two lands) draw:1 controller && phaseaction[endofturn once] untap target(<2>land)
|
||||
@@ -2729,7 +2768,7 @@ subtype=Teferi
|
||||
[card]
|
||||
name=Teferi, Master of Time
|
||||
auto=counter(0/0,3,loyalty)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Draw a card and discard one) draw:1 controller && transforms((,newability[target(*|myhand) reject])) oneshot
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Draw a card and discard one) _LOOT_
|
||||
auto={C(0/0,-3,Loyalty)}:name(-3: Target creature you don't control phases out) target(creature|opponentBattlefield) phaseout
|
||||
auto={C(0/0,-10,Loyalty)}:name(-10: Take two extra turns) turns:+2 controller
|
||||
text=You may activate loyalty abilities of Teferi, Master of Time on any player's turn any time you could cast an instant. -- +1: Draw a card, then discard a card. -- −3: Target creature you don't control phases out. (Treat it and anything attached to it as though they don't exist until its controller's next turn.) -- −10: Take two extra turns after this one.
|
||||
@@ -2864,7 +2903,7 @@ name=Tezzeret, Cruel Machinist
|
||||
auto=counter(0/0,4,loyalty)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Draw a card) draw:1 controller
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Target artifact becomes 5/5) target(artifact) transforms((Artifact Creature,setpower=5,settoughness=5)) uynt
|
||||
auto={C(0/0,-7,Loyalty)}:name(-7: Manifest any number of cards form your hand) manifest notatarget(<anyamount>*|myHand) and!( transforms((Artifact Creature,setpower=5,settoughness=5) forever )!
|
||||
auto={C(0/0,-7,Loyalty)}:name(-7: Manifest any number of cards form your hand) manifest notatarget(<anyamount>*|myHand) and!( transforms((Artifact Creature,setpower=5,settoughness=5)) forever )!
|
||||
text=+1: Draw a card. -- 0: Until your next turn, target artifact you control becomes a 5/5 creature in addition to its other types. -- −7: Put any number of cards from your hand onto the battlefield face down. They're 5/5 artifact creatures.
|
||||
mana={4}{U}{U}
|
||||
type=Legendary Planeswalker
|
||||
@@ -3288,7 +3327,7 @@ subtype=Wrenn
|
||||
[/card]
|
||||
[card]
|
||||
name=Xenagos, the Reveler
|
||||
aicode=activate transforms((,newability[all(*[zpos<=7]|mylibrary) moveto(exile) and!( if cantargetcard(*[creature;land]|*) then moveto(ownerbattlefield)])) ueot
|
||||
aicode=activate transforms((,newability[all(*[zpos<=7]|mylibrary) moveto(exile) and!( if cantargetcard(*[creature;land]|*) then moveto(ownerbattlefield)])!)) ueot
|
||||
auto=counter(0/0,3,loyalty)
|
||||
auto={C(0/0,1,Loyalty)}:name(+1: Add X combination of red and green mana for each creature) foreach(creature|mybattlefield) ability$!name(Choose one) choice name(Add Red) add{R} _ choice name(Add Green) add{G}!$ controller
|
||||
auto={C(0/0,0,Loyalty)}:name(+0: Create a 2/2 Satyr) token(Satyr,Creature Satyr,2/2,green,red,haste)
|
||||
|
||||
@@ -58,6 +58,17 @@ mana={2}{W}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Aboleth Spawn
|
||||
abilities=flash
|
||||
auto=_WARD_(2)
|
||||
text=Flash -- Ward {2} -- Probing Telepathy - Whenever a creature entering the battlefield under an opponent's control causes a triggered ability of that creature to trigger, you may copy that ability. You may choose new targets for the copy.
|
||||
mana={2}{U}
|
||||
type=Creature
|
||||
subtype=Fish Horror
|
||||
power=2
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Abstract Iguanart
|
||||
text=Whenever you cast a spell, note the first letter of its artist's name. If that letter wasn't already noted, put a +1/+1 counter on Abstract Iguanart.
|
||||
mana={1}{R}
|
||||
@@ -350,6 +361,16 @@ power=5
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Archivist of Oghma
|
||||
abilities=flash
|
||||
text=Flash -- Whenever an opponent searches their library, you gain 1 life and draw a card.
|
||||
mana={1}{W}
|
||||
type=Creature
|
||||
subtype=Halfling Cleric
|
||||
power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Arcum's Whistle
|
||||
text={3}, {T}: Choose target non-Wall creature the active player has controlled continuously since the beginning of the turn. That player may pay {X}, where X is that creature's converted mana cost. If he or she doesn't, the creature attacks this turn if able, and at the beginning of the next end step, destroy it if it didn't attack. Activate this ability only before attackers are declared.
|
||||
mana={3}
|
||||
@@ -377,13 +398,6 @@ power=6
|
||||
toughness=6
|
||||
[/card]
|
||||
[card]
|
||||
name=Armor of Thorns
|
||||
text=You may cast Armor of Thorns as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant nonblack creature -- Enchanted creature gets +2/+2.
|
||||
mana={1}{G}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Arms Depot
|
||||
text=Whenever you crank Arms Depot, put two +1/+1 counters on target creature.
|
||||
type=Artifact
|
||||
@@ -2640,6 +2654,16 @@ mana={1}{R}{R}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Dynaheir, Invoker Adept
|
||||
abilities=haste
|
||||
text=Haste -- You may activate abilities of other creatures you control as though those creatures had haste. -- {T}: When you next activate an ability that isn't a mana ability this turn by spending four or more mana to activate it, copy that ability. You may choose new targets for the copy.
|
||||
mana={1}{U}{R}{W}
|
||||
type=Legendary Creature
|
||||
subtype=Human Wizard
|
||||
power=4
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Earl of Squirrel
|
||||
text=Squirrellink (Damage dealt by this creature also causes you to create that many 1/1 green Squirrel creature tokens.) -- Creature tokens you control are Squirrels in addition to their other creature types. -- Other Squirrels you control get +1/+1.
|
||||
mana={4}{G}{G}
|
||||
@@ -3374,6 +3398,12 @@ mana={U}{U}{U}{U}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Fraying Line
|
||||
text=When Fraying Line enters the battlefield, put a rope counter on target creature you control. -- At the beginning of each player's upkeep, that player may pay {2}. If they do, they put a rope counter on a creature they control. Otherwise, exile Fraying Line and each creature without a rope counter on it, then remove all rope counters from all creatures.
|
||||
mana={4}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Frazzled Editor
|
||||
text=Protection from wordy (Something is wordy if it has four or more lines of text in its text box.)
|
||||
mana={1}{R}
|
||||
@@ -3960,13 +3990,6 @@ mana={2}{G}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Grave Servitude
|
||||
text=You may cast Grave Servitude as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant creature -- Enchanted creature gets +3/-1 and is black.
|
||||
mana={1}{B}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Graveyard Busybody
|
||||
text=All graveyards are also your graveyards. -- Graveyard Busybody's power and toughness are each equal to the number of cards with flavor text in your graveyards.
|
||||
mana={4}{U}{U}
|
||||
@@ -3991,6 +4014,25 @@ mana={1}{W}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Green Slime
|
||||
abilities=flash
|
||||
text=Flash -- When Green Slime enters the battlefield, counter target activated or triggered ability from an artifact or enchantment source. If a permanent's ability is countered this way, destroy that permanent. -- Foretell {G} (During your turn, you may pay {2} and exile this card from your hand face down. Cast it on a later turn for its foretell cost.)
|
||||
mana={2}{G}
|
||||
type=Creature
|
||||
subtype=Ooze
|
||||
power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Grell Philosopher
|
||||
text=Aberrant Tinkering - When Grell Philosopher enters the battlefield and at the beginning of your upkeep, each Horror you control gains all activated abilities of target artifact an opponent controls until end of turn. You may spend blue mana as though it were mana of any color to activate those abilities.
|
||||
mana={2}{U}
|
||||
type=Creature
|
||||
subtype=Horror Wizard
|
||||
power=1
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Grim Reminder
|
||||
text=Search your library for a nonland card and reveal it. Each opponent who cast a card this turn with the same name as that card loses 6 life. Then shuffle your library. -- {B}{B}: Return Grim Reminder from your graveyard to your hand. Activate this ability only during your upkeep.
|
||||
mana={2}{B}
|
||||
@@ -4995,6 +5037,15 @@ mana={1}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Jon Irenicus, Shattered One
|
||||
text=At the beginning of your end step, target opponent gains control of up to one target creature you control. Put two +1/+1 counters on it and tap it. It's goaded for the rest of the game and it gains "This creature can't be sacrificed." (It attacks each combat if able and attacks a player other than you if able.) -- Whenever a creature you own but don't control attacks, you draw a card.
|
||||
mana={2}{U}{B}
|
||||
type=Legendary Creature
|
||||
subtype=Elf Wizard
|
||||
power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Jotun Grunt
|
||||
text=Cumulative upkeep-Put two cards from a single graveyard on the bottom of their owner's library. (At the beginning of your upkeep, put an age counter on this permanent, then sacrifice it unless you pay its upkeep cost for each age counter on it.)
|
||||
mana={1}{W}
|
||||
@@ -5483,6 +5534,22 @@ mana={4}{R}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Lae'zel, Vlaakith's Champion
|
||||
abilities=backgroundpartner
|
||||
text=If you would put one or more counters on a creature or planeswalker you control or on yourself, put that many plus one of each of those kinds of counters on that permanent or player instead. -- Choose a Background (You can have a Background as a second commander.)
|
||||
mana={2}{W}
|
||||
type=Legendary Creature
|
||||
subtype=Gith Warrior
|
||||
power=3
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Lae'zel's Acrobatics
|
||||
text=Exile all nontoken creatures you control, then roll a d20. -- 1-9 | Return those cards to the battlefield under their owner's control at the beginning of the next end step. -- 10-20 | Return those cards to the battlefield under their owner's control, then exile them again. Return those cards to the battlefield under their owner's control at the beginning of the next end step.
|
||||
mana={3}{W}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Lash Out
|
||||
text=Lash Out deals 3 damage to target creature. Clash with an opponent. If you win, Lash Out deals 3 damage to that creature's controller. (Each clashing player reveals the top card of his or her library, then puts that card on the top or bottom. A player wins if his or her card had a higher converted mana cost.)
|
||||
mana={1}{R}
|
||||
@@ -5657,13 +5724,6 @@ mana={2}{W}{W}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Lightning Reflexes
|
||||
text=You may cast Lightning Reflexes as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant creature -- Enchanted creature gets +1/+0 and has first strike.
|
||||
mana={1}{R}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Lightning Storm
|
||||
text=Lightning Storm deals X damage to target creature or player, where X is 3 plus the number of charge counters on it. -- Discard a land card: Put two charge counters on Lightning Storm. You may choose a new target for it. Any player may activate this ability but only if Lightning Storm is on the stack.
|
||||
mana={1}{R}{R}
|
||||
@@ -6173,6 +6233,16 @@ mana={5}{R}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Mighty Servant of Leuk-o
|
||||
abilities=trample
|
||||
text=Trample -- Ward-Discard a card. -- Whenever Mighty Servant of Leuk-o becomes crewed for the first time each turn, if it was crewed by exactly two creatures, it gains "Whenever this creature deals combat damage to a player, draw two cards" until end of turn. -- Crew 4
|
||||
mana={3}
|
||||
type=Artifact
|
||||
subtype=Vehicle
|
||||
power=6
|
||||
toughness=6
|
||||
[/card]
|
||||
[card]
|
||||
name=Minamo's Meddling
|
||||
text=Counter target spell. That spell's controller reveals his or her hand, then discards each card with the same name as a card spliced onto that spell.
|
||||
mana={2}{U}{U}
|
||||
@@ -6623,13 +6693,6 @@ mana={4}{W}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Mystic Veil
|
||||
text=You may cast Mystic Veil as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant creature -- Enchanted creature has shroud. (It can't be the target of spells or abilities.)
|
||||
mana={1}{U}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Mythos of Snapdax
|
||||
text=Each player chooses an artifact, a creature, an enchantment, and a planeswalker from among the nonland permanents they control, then sacrifices the rest. If {B}{R} was spent to cast this spell, you choose the permanents for each player instead.
|
||||
mana={2}{W}{W}
|
||||
@@ -6866,6 +6929,13 @@ power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Noble Heritage
|
||||
text=Commander creatures you own have "When this creature enters the battlefield and at the beginning of your upkeep, each player may put two +1/+1 counters on a creature they control. For each opponent who does, you gain protection from that player until your next turn." (You can't be targeted, dealt damage, or enchanted by anything controlled by that player.)
|
||||
mana={1}{W}
|
||||
type=Legendary Enchantment
|
||||
subtype=Background
|
||||
[/card]
|
||||
[card]
|
||||
name=Nomads en-Kor
|
||||
text={0}: The next 1 damage that would be dealt to Nomads en-Kor this turn is dealt to target creature you control instead.
|
||||
mana={W}
|
||||
@@ -7357,12 +7427,6 @@ mana={U}{B}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Parapet
|
||||
text=You may cast Parapet as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Creatures you control get +0/+1.
|
||||
mana={1}{W}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Pardic Dragon
|
||||
abilities=flying
|
||||
text=Flying -- {R}: Pardic Dragon gets +1/+0 until end of turn. -- Suspend 2-{R}{R} -- Whenever an opponent casts a spell, if Pardic Dragon is suspended, that player may put a time counter on Pardic Dragon.
|
||||
@@ -7903,6 +7967,15 @@ mana={4}{PR}
|
||||
type=Artifact
|
||||
[/card]
|
||||
[card]
|
||||
name=Raggadragga, Goreguts Boss
|
||||
text=Each creature you control with a mana ability gets +2/+2. -- Whenever a creature you control with a mana ability attacks, untap it. -- Whenever you cast a spell, if at least seven mana was spent to cast it, untap target creature. It gets +7/+7 and gains trample until end of turn.
|
||||
mana={2}{R}{G}
|
||||
type=Legendary Creature
|
||||
subtype=Human Boar
|
||||
power=4
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Raging River
|
||||
text=Whenever one or more creatures you control attack, each defending player divides all creatures without flying he or she controls into a "left" pile and a "right" pile. Then, for each attacking creature you control, choose "left" or "right." That creature can't be blocked this combat except by creatures with flying and creatures in a pile with the chosen label.
|
||||
mana={R}{R}
|
||||
@@ -8100,13 +8173,6 @@ mana={1}{R}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=Relic Ward
|
||||
text=You may cast Relic Ward as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant artifact -- Enchanted artifact has shroud. (It can't be the target of spells or abilities.)
|
||||
mana={1}{W}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Remodel
|
||||
text=If you control two or more green permanents that share an artist, you may play Remodel without paying its mana cost. -- Remove target artifact from the game.
|
||||
mana={2}{G}
|
||||
@@ -9148,13 +9214,6 @@ mana={2}{U}
|
||||
type=Enchantment
|
||||
[/card]
|
||||
[card]
|
||||
name=Soar
|
||||
text=You may cast Soar as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant creature -- Enchanted creature gets +0/+1 and has flying.
|
||||
mana={1}{U}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Socketed Sprocketer
|
||||
text={T}: Uninstall all results from Socketed Sprocketer, then roll a six-sided die. Install the result on Socketed Sprocketer. (Put the die on this card.) -- You may uninstall a result from Socketed Sprocketer to use it for a die you rolled. -- Uninstall a 6 from Socketed Sprocketer: Draw a card.
|
||||
mana={U}
|
||||
@@ -9406,13 +9465,6 @@ power=5
|
||||
toughness=6
|
||||
[/card]
|
||||
[card]
|
||||
name=Spider Climb
|
||||
text=You may cast Spider Climb as though it had flash. If you cast it any time a sorcery couldn't have been cast, the controller of the permanent it becomes sacrifices it at the beginning of the next cleanup step. -- Enchant creature -- Enchanted creature gets +0/+3 and has reach. (It can block creatures with flying.)
|
||||
mana={G}
|
||||
type=Enchantment
|
||||
subtype=Aura
|
||||
[/card]
|
||||
[card]
|
||||
name=Spire Phantasm
|
||||
text=Reveal Spire Phantasm as you draft it. The next time a player drafts a card from this booster pack, guess that card's name. Then that player reveals the drafted card. -- Flying -- When Spire Phantasm enters the battlefield, if you guessed correctly for a card named Spire Phantasm, draw a card.
|
||||
mana={2}{U}{U}
|
||||
@@ -9668,6 +9720,12 @@ power=4
|
||||
toughness=4
|
||||
[/card]
|
||||
[card]
|
||||
name=Stick Together
|
||||
text=Each player chooses a party from among creatures they control, then sacrifices the rest. (To choose a party, choose up to one each of Cleric, Rogue, Warrior, and Wizard.)
|
||||
mana={3}{W}{W}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Stifle
|
||||
text=Counter target activated or triggered ability. (Mana abilities can't be targeted.)
|
||||
mana={U}
|
||||
@@ -10795,15 +10853,6 @@ power=2
|
||||
toughness=2
|
||||
[/card]
|
||||
[card]
|
||||
name=Umori, the Collector
|
||||
text=Companion - Each nonland card in your starting deck shares a card type. (If this card is your chosen companion, you may cast it once from outside the game.) -- As Umori, the CollectorUmori, the Collector enters the battlefield, choose a card type. -- Spells you cast of the chosen type cost 1 less to cast.
|
||||
mana={2}{BG}{BG}
|
||||
type=Legendary Creature
|
||||
subtype=Ooze
|
||||
power=4
|
||||
toughness=5
|
||||
[/card]
|
||||
[card]
|
||||
name=Unbound Flourishing
|
||||
text=Whenever you cast a permanent spell with a mana cost that contains {X}, double the value of X. -- Whenever you cast an instant or sorcery spell or activate an ability, if that spell's mana cost or that ability's activation cost contains {X}, copy that spell or ability. You may choose new targets for the copy.
|
||||
mana={2}{G}
|
||||
@@ -11089,6 +11138,16 @@ power=6
|
||||
toughness=5
|
||||
[/card]
|
||||
[card]
|
||||
name=Volo, Itinerant Scholar
|
||||
abilities=backgroundpartner
|
||||
text=When Volo enters the battlefield, create Volo's Journal, a legendary colorless artifact token with hexproof and "Whenever you cast a creature spell, note one of its creature types that hasn't been noted for this artifact." -- {2}, {T}: Draw a card for each creature type noted for target permanent you control named Volo's Journal. -- Choose a Background
|
||||
mana={2}{U}
|
||||
type=Legendary Creature
|
||||
subtype=Human Wizard
|
||||
power=2
|
||||
toughness=3
|
||||
[/card]
|
||||
[card]
|
||||
name=Volrath's Curse
|
||||
text=Enchant creature -- Enchanted creature can't attack or block, and its activated abilities can't be activated. That creature's controller may sacrifice a permanent for that player to ignore this effect until end of turn. -- {1}{U}: Return Volrath's Curse to its owner's hand.
|
||||
mana={1}{U}
|
||||
@@ -11579,6 +11638,13 @@ mana={2}{U}
|
||||
type=Sorcery
|
||||
[/card]
|
||||
[card]
|
||||
name=Wyll's Reversal
|
||||
target=*|stack
|
||||
text=Choose target spell or ability with one or more targets. Roll a d20 and add the greatest power among creatures you control. -- 1-14 | You may choose new targets for that spell or ability. -- 15+ | You may choose new targets for that spell or ability. Then copy it. You may choose new targets for the copy.
|
||||
mana={2}{R}
|
||||
type=Instant
|
||||
[/card]
|
||||
[card]
|
||||
name=X
|
||||
text=As long as X is in X's owner's opponent's hand, X's owner may cast X and activate X's abilities. That opponent can't cast X and plays with their hand revealed. -- {U}{B}, {T}: Put X into target opponent's hand. -- {3}{U}{B}: You may play a card in the same hand as X without paying its mana cost.
|
||||
mana={U}{B}
|
||||
|
||||
@@ -607,6 +607,35 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
class TrplayerInitiative: public Trigger
|
||||
{
|
||||
public:
|
||||
bool thiscontroller, thisopponent;
|
||||
TrplayerInitiative(GameObserver* observer, int id, MTGCardInstance * source, TargetChooser * tc, bool once = false, bool thiscontroller = false, bool thisopponent = false) :
|
||||
Trigger(observer, id, source, once, tc), thiscontroller(thiscontroller), thisopponent(thisopponent)
|
||||
{
|
||||
}
|
||||
|
||||
int triggerOnEventImpl(WEvent * event)
|
||||
{
|
||||
WEventplayerInitiative * e = dynamic_cast<WEventplayerInitiative *> (event);
|
||||
if (!e) return 0;
|
||||
if (!tc->canTarget(e->player)) return 0;
|
||||
if(thiscontroller)
|
||||
if(e->player != source->controller())
|
||||
return 0;
|
||||
if(thisopponent)
|
||||
if(e->player == source->controller())
|
||||
return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
TrplayerInitiative * clone() const
|
||||
{
|
||||
return NEW TrplayerInitiative(*this);
|
||||
}
|
||||
};
|
||||
|
||||
class TrplayerShuffled: public Trigger
|
||||
{
|
||||
public:
|
||||
@@ -4367,6 +4396,18 @@ public:
|
||||
AAAlterMonarch * clone() const;
|
||||
~AAAlterMonarch();
|
||||
};
|
||||
//Initiative
|
||||
class AAAlterInitiative: public ActivatedAbilityTP
|
||||
{
|
||||
public:
|
||||
|
||||
AAAlterInitiative(GameObserver* observer, int _id, MTGCardInstance * _source, Targetable * _target, ManaCost * _cost = NULL,
|
||||
int who = TargetChooser::UNSET);
|
||||
int resolve();
|
||||
const string getMenuText();
|
||||
AAAlterInitiative * clone() const;
|
||||
~AAAlterInitiative();
|
||||
};
|
||||
//Surveil Offset
|
||||
class AAAlterSurveilOffset: public ActivatedAbilityTP
|
||||
{
|
||||
|
||||
@@ -17,7 +17,7 @@ typedef enum
|
||||
GAME_TYPE_RANDOM2,
|
||||
GAME_TYPE_RANDOM3,
|
||||
GAME_TYPE_RANDOM5,
|
||||
GAME_TYPE_RANDOMCOMMANDER,
|
||||
GAME_TYPE_RANDOMCOMMANDER,
|
||||
GAME_TYPE_HORDE,
|
||||
GAME_TYPE_SET_LIMITED,
|
||||
GAME_TYPE_STORY,
|
||||
@@ -339,7 +339,8 @@ class Constants
|
||||
COUNTERSHROUD = 211,
|
||||
NONIGHT = 212,
|
||||
NODAMAGEREMOVED = 213,
|
||||
NB_BASIC_ABILITIES = 214,
|
||||
BACKGROUNDPARTNER = 214,
|
||||
NB_BASIC_ABILITIES = 215,
|
||||
|
||||
RARITY_S = 'S', //Special Rarity
|
||||
RARITY_M = 'M', //Mythics
|
||||
|
||||
@@ -48,6 +48,7 @@ public:
|
||||
int dungeonCompleted;
|
||||
int numOfCommandCast;
|
||||
int monarch;
|
||||
int initiative;
|
||||
int surveilOffset;
|
||||
int devotionOffset;
|
||||
int lastShuffleTurn;
|
||||
|
||||
@@ -44,7 +44,7 @@ protected:
|
||||
Player * loadPlayerRandom(GameObserver* observer, int isAI, int mode);
|
||||
Player * loadPlayerRandomThree(GameObserver* observer, int isAI);
|
||||
Player * loadPlayerRandomFive(GameObserver* observer, int isAI);
|
||||
Player * loadPlayerRandomCommander(GameObserver* observer, int isAI);
|
||||
Player * loadPlayerRandomCommander(GameObserver* observer, int isAI);
|
||||
Player * loadPlayerHorde(GameObserver* observer, int isAI);
|
||||
Player * loadRandomSetLimited(GameObserver* observer, int isAI);
|
||||
Player * initPlayer(GameObserver *observer, int playerId);
|
||||
|
||||
@@ -33,7 +33,8 @@ public:
|
||||
TYPE_DUNGEON = 18,
|
||||
TYPE_EMBLEM = 19,
|
||||
TYPE_CONSPIRACY = 20,
|
||||
LAST_TYPE = TYPE_CONSPIRACY,
|
||||
TYPE_BACKGROUND = 21,
|
||||
LAST_TYPE = TYPE_BACKGROUND,
|
||||
};
|
||||
|
||||
protected:
|
||||
|
||||
@@ -385,6 +385,14 @@ struct WEventplayerMonarch : public WEvent {
|
||||
virtual Targetable * getTarget(Player * player);
|
||||
};
|
||||
|
||||
//initiative event
|
||||
struct WEventplayerInitiative : public WEvent {
|
||||
WEventplayerInitiative(Player * player);
|
||||
Player * player;
|
||||
using WEvent::getTarget;
|
||||
virtual Targetable * getTarget(Player * player);
|
||||
};
|
||||
|
||||
//shuffle event
|
||||
struct WEventplayerShuffled : public WEvent {
|
||||
WEventplayerShuffled(Player * player);
|
||||
|
||||
@@ -1370,6 +1370,44 @@ AAAlterMonarch::~AAAlterMonarch()
|
||||
{
|
||||
}
|
||||
|
||||
//AA Initiative
|
||||
AAAlterInitiative::AAAlterInitiative(GameObserver* observer, int _id, MTGCardInstance * _source, Targetable * _target, ManaCost * _cost,
|
||||
int who) :
|
||||
ActivatedAbilityTP(observer, _id, _source, _target, _cost, who)
|
||||
{
|
||||
}
|
||||
|
||||
int AAAlterInitiative::resolve()
|
||||
{
|
||||
Damageable * _target = (Damageable *) getTarget();
|
||||
if (_target)
|
||||
{
|
||||
Player * pTarget = (Player*)_target;
|
||||
if(pTarget)
|
||||
{
|
||||
pTarget->initiative = 1;
|
||||
pTarget->opponent()->initiative = 0;
|
||||
WEvent * e = NEW WEventplayerInitiative(pTarget);
|
||||
game->receiveEvent(e);
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
const string AAAlterInitiative::getMenuText()
|
||||
{
|
||||
return _("A player takes the Initiative").c_str();
|
||||
}
|
||||
|
||||
AAAlterInitiative * AAAlterInitiative::clone() const
|
||||
{
|
||||
return NEW AAAlterInitiative(*this);
|
||||
}
|
||||
|
||||
AAAlterInitiative::~AAAlterInitiative()
|
||||
{
|
||||
}
|
||||
|
||||
//AA Energy Counters
|
||||
AAAlterEnergy::AAAlterEnergy(GameObserver* observer, int _id, MTGCardInstance * _source, Targetable * _target, int energy, ManaCost * _cost,
|
||||
int who) :
|
||||
|
||||
@@ -1069,7 +1069,7 @@ bool ShopBooster::unitTest()
|
||||
TestSuite::Log(result);
|
||||
res = false;
|
||||
}
|
||||
sprintf(result, "<span class=\"success\">==Test Succesful !==</span><br />");
|
||||
sprintf(result, "<span class=\"success\">==Test Successful !==</span><br />");
|
||||
TestSuite::Log(result);
|
||||
SAFE_DELETE(ddw);
|
||||
SAFE_DELETE(d);
|
||||
|
||||
@@ -344,6 +344,51 @@ int AbilityFactory::parseCastRestrictions(MTGCardInstance * card, Player * playe
|
||||
if(!count)
|
||||
return 0;
|
||||
}
|
||||
check = restriction[i].find("exilecast");
|
||||
if(check != string::npos)
|
||||
{
|
||||
int count = 0;
|
||||
for(unsigned int k = 0; k < player->game->stack->cardsSeenThisTurn.size(); k++)
|
||||
{
|
||||
MTGCardInstance * stackCard = player->game->stack->cardsSeenThisTurn[k];
|
||||
if(stackCard->next && stackCard->next == card && (card->previousZone == card->controller()->game->exile||card->previousZone == card->controller()->opponent()->game->exile))
|
||||
count++;
|
||||
if(stackCard == card && (card->previousZone == card->controller()->game->exile||card->previousZone == card->controller()->opponent()->game->exile))
|
||||
count++;
|
||||
}
|
||||
if(!count)
|
||||
return 0;
|
||||
}
|
||||
check = restriction[i].find("sidecast");
|
||||
if(check != string::npos)
|
||||
{
|
||||
int count = 0;
|
||||
for(unsigned int k = 0; k < player->game->stack->cardsSeenThisTurn.size(); k++)
|
||||
{
|
||||
MTGCardInstance * stackCard = player->game->stack->cardsSeenThisTurn[k];
|
||||
if(stackCard->next && stackCard->next == card && (card->previousZone == card->controller()->game->sideboard||card->previousZone == card->controller()->opponent()->game->sideboard))
|
||||
count++;
|
||||
if(stackCard == card && (card->previousZone == card->controller()->game->sideboard||card->previousZone == card->controller()->opponent()->game->sideboard))
|
||||
count++;
|
||||
}
|
||||
if(!count)
|
||||
return 0;
|
||||
}
|
||||
check = restriction[i].find("commandzonecast");
|
||||
if(check != string::npos)
|
||||
{
|
||||
int count = 0;
|
||||
for(unsigned int k = 0; k < player->game->stack->cardsSeenThisTurn.size(); k++)
|
||||
{
|
||||
MTGCardInstance * stackCard = player->game->stack->cardsSeenThisTurn[k];
|
||||
if(stackCard->next && stackCard->next == card && (card->previousZone == card->controller()->game->commandzone||card->previousZone == card->controller()->opponent()->game->commandzone))
|
||||
count++;
|
||||
if(stackCard == card && (card->previousZone == card->controller()->game->commandzone||card->previousZone == card->controller()->opponent()->game->commandzone))
|
||||
count++;
|
||||
}
|
||||
if(!count)
|
||||
return 0;
|
||||
}
|
||||
check = restriction[i].find("rebound");
|
||||
if(check != string::npos)
|
||||
{
|
||||
@@ -1275,6 +1320,14 @@ TriggeredAbility * AbilityFactory::parseTrigger(string s, string, int id, Spell
|
||||
if (TargetChooser * tc = parseSimpleTC(s, "becomesmonarchfoeof", card))
|
||||
return NEW TrplayerMonarch(observer, id, card, tc, once, false, true);
|
||||
|
||||
//takes the initiative - controller of card
|
||||
if (TargetChooser * tc = parseSimpleTC(s, "takeninitiativeof", card))
|
||||
return NEW TrplayerInitiative(observer, id, card, tc, once, true, false);
|
||||
|
||||
//takes the initiative - opponent of card controller
|
||||
if (TargetChooser * tc = parseSimpleTC(s, "takeninitiativeof", card))
|
||||
return NEW TrplayerInitiative(observer, id, card, tc, once, false, true);
|
||||
|
||||
//shuffled library - controller of card
|
||||
if (TargetChooser * tc = parseSimpleTC(s, "shuffledof", card))
|
||||
return NEW TrplayerShuffled(observer, id, card, tc, once, true, false);
|
||||
@@ -3912,6 +3965,16 @@ MTGAbility * AbilityFactory::parseMagicLine(string s, int id, Spell * spell, MTG
|
||||
return a;
|
||||
}
|
||||
|
||||
//takes the initiative
|
||||
vector<string> splitInitiative = parseBetween(s, "taketheinitiative", " ", false);
|
||||
if (splitInitiative.size())
|
||||
{
|
||||
Targetable * t = spell ? spell->getNextTarget() : NULL;
|
||||
MTGAbility * a = NEW AAAlterInitiative(observer, id, card, t, NULL, who);
|
||||
a->oneShot = 1;
|
||||
return a;
|
||||
}
|
||||
|
||||
//alter mutation counter on target card with trigger activation
|
||||
vector<string> splitMutated = parseBetween(s, "altermutationcounter:", " ", false);
|
||||
if (splitMutated.size())
|
||||
|
||||
@@ -995,10 +995,10 @@ MTGDeck::MTGDeck(const string& config_file, MTGAllCards * _allcards, int meta_on
|
||||
MTGCard * newcard = database->getCardById(atoi(s.c_str()));
|
||||
if(!CommandZone.size() && newcard->data->hasType("Legendary") && (newcard->data->hasType("Creature") || newcard->data->basicAbilities[Constants::CANBECOMMANDER])) // If no commander has been added you can add one.
|
||||
CommandZone.push_back(s);
|
||||
else if(CommandZone.size() == 1 && newcard->data->hasType("Legendary") && (newcard->data->hasType("Creature") || newcard->data->basicAbilities[Constants::CANBECOMMANDER])){ // If a commander has been added you can add a new one just if both have partner ability.
|
||||
if(newcard && newcard->data->basicAbilities[Constants::PARTNER]){
|
||||
else if(CommandZone.size() == 1 && newcard->data->hasType("Legendary") && (newcard->data->hasType("Creature") || newcard->data->basicAbilities[Constants::CANBECOMMANDER])){ // If a commander has been added you can add a new one just if both have partner ability of if one can choose a Background.
|
||||
if(newcard && (newcard->data->basicAbilities[Constants::PARTNER] || newcard->data->basicAbilities[Constants::BACKGROUNDPARTNER])){
|
||||
MTGCard * oldcard = database->getCardById(atoi((CommandZone.at(0)).c_str()));
|
||||
if(oldcard && oldcard->data->basicAbilities[Constants::PARTNER] && (oldcard->data->name != newcard->data->name) && ((oldcard->data->partner == "" && newcard->data->partner == "") || (oldcard->data->partner == newcard->data->name && newcard->data->partner == oldcard->data->name)))
|
||||
if((oldcard && oldcard->data->hasType(Subtypes::TYPE_BACKGROUND) && (oldcard->data->name != newcard->data->name)) || (oldcard && oldcard->data->basicAbilities[Constants::PARTNER] && (oldcard->data->name != newcard->data->name) && ((oldcard->data->partner == "" && newcard->data->partner == "") || (oldcard->data->partner == newcard->data->name && newcard->data->partner == oldcard->data->name))))
|
||||
CommandZone.push_back(s);
|
||||
}
|
||||
}
|
||||
@@ -1012,10 +1012,10 @@ MTGDeck::MTGDeck(const string& config_file, MTGAllCards * _allcards, int meta_on
|
||||
str_id << newcard->getId();
|
||||
if(!CommandZone.size() && newcard->data->hasType("Legendary") && (newcard->data->hasType("Creature") || newcard->data->basicAbilities[Constants::CANBECOMMANDER])) // If no commander has been added you can add one.
|
||||
CommandZone.push_back(str_id.str());
|
||||
else if(CommandZone.size() == 1 && newcard->data->hasType("Legendary") && (newcard->data->hasType("Creature") || newcard->data->basicAbilities[Constants::CANBECOMMANDER])){ // If a commander has been added you can add a new one just if both have partner ability.
|
||||
if(newcard->data->basicAbilities[Constants::PARTNER]){
|
||||
else if(CommandZone.size() == 1 && newcard->data->hasType("Legendary") && (newcard->data->hasType("Creature") || newcard->data->basicAbilities[Constants::CANBECOMMANDER])){ // If a commander has been added you can add a new one just if both have partner ability of if one can choose a Background.
|
||||
if(newcard && (newcard->data->basicAbilities[Constants::PARTNER] || newcard->data->basicAbilities[Constants::BACKGROUNDPARTNER])){
|
||||
MTGCard * oldcard = database->getCardById(atoi((CommandZone.at(0)).c_str()));
|
||||
if(oldcard && oldcard->data->basicAbilities[Constants::PARTNER] && (oldcard->data->name != newcard->data->name) && ((oldcard->data->partner == "" && newcard->data->partner == "") || (oldcard->data->partner == newcard->data->name && newcard->data->partner == oldcard->data->name)))
|
||||
if((oldcard && oldcard->data->hasType(Subtypes::TYPE_BACKGROUND) && (oldcard->data->name != newcard->data->name)) || (oldcard && oldcard->data->basicAbilities[Constants::PARTNER] && (oldcard->data->name != newcard->data->name) && ((oldcard->data->partner == "" && newcard->data->partner == "") || (oldcard->data->partner == newcard->data->name && newcard->data->partner == oldcard->data->name))))
|
||||
CommandZone.push_back(str_id.str());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -244,7 +244,8 @@ const char* Constants::MTGBasicAbilities[] = {
|
||||
"expshroud", //Player can't get experience counters (e.g. "Solemnity").
|
||||
"countershroud", //Card can't get any kind of counter (e.g. "Solemnity").
|
||||
"nonight", //It can't become night (e.g. "Angel of Eternal Dawn").
|
||||
"nodamageremoved" //Damage is not removed from card (e.g. "Patient Zero").
|
||||
"nodamageremoved", //Damage is not removed from card (e.g. "Patient Zero").
|
||||
"backgroundpartner" //Can choose a backgorund partner as commander (e.g. "Faceless One").
|
||||
};
|
||||
|
||||
map<string,int> Constants::MTGBasicAbilitiesMap;
|
||||
|
||||
@@ -40,6 +40,7 @@ Player::Player(GameObserver *observer, string file, string fileSmall, MTGDeck *
|
||||
dungeonCompleted = 0;
|
||||
numOfCommandCast = 0;
|
||||
monarch = 0;
|
||||
initiative = 0;
|
||||
surveilOffset = 0;
|
||||
devotionOffset = 0;
|
||||
lastShuffleTurn = -1;
|
||||
|
||||
+60
-33
@@ -168,7 +168,7 @@ void Rules::addExtraRules(GameObserver* g)
|
||||
difficultyRating = 0;
|
||||
else if(g->mRules->gamemode == GAME_TYPE_RANDOM1 || g->mRules->gamemode == GAME_TYPE_RANDOM2)
|
||||
difficultyRating = 0;
|
||||
else if(g->mRules->gamemode == GAME_TYPE_RANDOM3 || g->mRules->gamemode == GAME_TYPE_RANDOM5 || g->mRules->gamemode == GAME_TYPE_RANDOMCOMMANDER)
|
||||
else if(g->mRules->gamemode == GAME_TYPE_RANDOM3 || g->mRules->gamemode == GAME_TYPE_RANDOM5 || g->mRules->gamemode == GAME_TYPE_RANDOMCOMMANDER)
|
||||
difficultyRating = 0;
|
||||
else if(g->mRules->gamemode == GAME_TYPE_HORDE || g->mRules->gamemode == GAME_TYPE_SET_LIMITED)
|
||||
difficultyRating = 0;
|
||||
@@ -418,53 +418,78 @@ Player * Rules::loadPlayerRandomFive(GameObserver* observer, int isAI)
|
||||
|
||||
Player * Rules::loadPlayerRandomCommander(GameObserver* observer, int isAI)
|
||||
{
|
||||
#if !defined (PSP)
|
||||
std::unique_ptr<MTGDeck> cmdTempDeck(new MTGDeck(MTGCollection()));
|
||||
std::unique_ptr<MTGDeck> tempDeck(new MTGDeck(MTGCollection()));
|
||||
#else
|
||||
MTGDeck * cmdTempDeck = NEW MTGDeck(MTGCollection());
|
||||
MTGDeck * tempDeck = NEW MTGDeck(MTGCollection());
|
||||
tempDeck->meta_commander = true;
|
||||
#endif
|
||||
tempDeck->meta_commander = true;
|
||||
|
||||
string lands[] = { "", "forest", "island", "mountain", "swamp", "plains", "basic", "basic" };
|
||||
string lands[] = { "", "forest", "island", "mountain", "swamp", "plains", "basic", "basic" };
|
||||
|
||||
cmdTempDeck->addRandomCards(1, 0, 0, -1, "legendary");
|
||||
DeckDataWrapper * myCommandZone = NEW DeckDataWrapper(cmdTempDeck);
|
||||
MTGCard * commander = myCommandZone->getCard(0, true);
|
||||
cmdTempDeck->addRandomCards(1, 0, 0, -1, "legendary");
|
||||
#if !defined (PSP)
|
||||
std::unique_ptr<DeckDataWrapper> myCommandZone(new DeckDataWrapper(cmdTempDeck.get()));
|
||||
#else
|
||||
DeckDataWrapper * myCommandZone = NEW DeckDataWrapper(cmdTempDeck);
|
||||
#endif
|
||||
MTGCard * commander = myCommandZone->getCard(0, true);
|
||||
|
||||
while(!commander->data->isCreature())
|
||||
{
|
||||
cmdTempDeck->addRandomCards(1, 0, 0, -1, "legendary");
|
||||
myCommandZone = NEW DeckDataWrapper(cmdTempDeck);
|
||||
commander = myCommandZone->getCard(0, true);
|
||||
}
|
||||
while(!commander->data->isCreature())
|
||||
{
|
||||
cmdTempDeck->addRandomCards(1, 0, 0, -1, "legendary");
|
||||
#if !defined (PSP)
|
||||
myCommandZone.reset(new DeckDataWrapper(cmdTempDeck.get()));
|
||||
#else
|
||||
myCommandZone = NEW DeckDataWrapper(cmdTempDeck);
|
||||
#endif
|
||||
commander = myCommandZone->getCard(0, true);
|
||||
}
|
||||
|
||||
stringstream cid;
|
||||
stringstream cid;
|
||||
cid << commander->getMTGId();
|
||||
vector<string> newCMD;
|
||||
newCMD.push_back(cid.str());
|
||||
tempDeck->replaceCMD(newCMD);
|
||||
newCMD.push_back(cid.str());
|
||||
tempDeck->replaceCMD(newCMD);
|
||||
|
||||
std::vector< int > colors;
|
||||
std::vector< int > colors;
|
||||
|
||||
for (int i = 0; i < Constants::NB_Colors; i++)
|
||||
{
|
||||
if (commander->data->getManaCost()->hasColor(i))
|
||||
colors.push_back(i);
|
||||
}
|
||||
for (int i = 0; i < Constants::NB_Colors; i++)
|
||||
{
|
||||
if (commander->data->getManaCost()->hasColor(i))
|
||||
colors.push_back(i);
|
||||
}
|
||||
|
||||
if(colors.data()[0] != 0) { colors.insert(colors.begin(),0); }
|
||||
if(colors.data()[0] != 0) { colors.insert(colors.begin(),0); }
|
||||
|
||||
if(colors.size() > 1)
|
||||
{
|
||||
for (unsigned int i = 1; i < colors.size(); i++)
|
||||
{
|
||||
tempDeck->addRandomCards(40/(colors.size()-1), 0, 0, 'L', lands[colors.data()[i]].c_str());
|
||||
}
|
||||
}
|
||||
else { tempDeck->addRandomCards(40, 0, 0, -1, "basic"); }
|
||||
// Add basic lands
|
||||
int numLands = 40;
|
||||
if(colors.size() > 1)
|
||||
{
|
||||
numLands /= colors.size() - 1;
|
||||
for (unsigned int i = 1; i < colors.size(); i++)
|
||||
{
|
||||
tempDeck->addRandomCards(numLands, 0, 0, 'L', lands[colors.data()[i]].c_str());
|
||||
}
|
||||
}
|
||||
else { tempDeck->addRandomCards(numLands, 0, 0, 'L'); }
|
||||
|
||||
tempDeck->addRandomCards(59, 0, 0, -1, "", colors.data(), colors.size());
|
||||
tempDeck->addRandomCards(59, 0, 0, -1, "", colors.data(), colors.size());
|
||||
|
||||
string deckFile = "random";
|
||||
string deckFileSmall = "random";
|
||||
|
||||
#if !defined (PSP)
|
||||
std::unique_ptr<Player> player;
|
||||
if (!isAI) // Human Player
|
||||
player.reset(new HumanPlayer(observer, deckFile, deckFileSmall, false, tempDeck.release()));
|
||||
else
|
||||
player.reset(new AIPlayerBaka(observer, deckFile, deckFileSmall, "", tempDeck.release()));
|
||||
|
||||
return player.release();
|
||||
#else
|
||||
Player *player = NULL;
|
||||
if (!isAI) // Human Player
|
||||
player = NEW HumanPlayer(observer, deckFile, deckFileSmall, false, tempDeck);
|
||||
@@ -472,6 +497,7 @@ Player * Rules::loadPlayerRandomCommander(GameObserver* observer, int isAI)
|
||||
player = NEW AIPlayerBaka(observer, deckFile, deckFileSmall, "", tempDeck);
|
||||
|
||||
return player;
|
||||
#endif
|
||||
}
|
||||
|
||||
Player * Rules::loadPlayerHorde(GameObserver* observer, int isAI)
|
||||
@@ -565,7 +591,7 @@ Player * Rules::initPlayer(GameObserver *g, int playerId)
|
||||
return loadPlayerRandomThree(g, isAI);
|
||||
case GAME_TYPE_RANDOM5:
|
||||
return loadPlayerRandomFive(g, isAI);
|
||||
case GAME_TYPE_RANDOMCOMMANDER:
|
||||
case GAME_TYPE_RANDOMCOMMANDER:
|
||||
return loadPlayerRandomCommander(g, isAI);
|
||||
case GAME_TYPE_HORDE:
|
||||
return loadPlayerHorde(g, isAI);
|
||||
@@ -666,6 +692,7 @@ void Rules::initGame(GameObserver *g, bool currentPlayerSet)
|
||||
p->dungeonCompleted = initState.playerData[i].player->dungeonCompleted;
|
||||
p->numOfCommandCast = initState.playerData[i].player->numOfCommandCast;
|
||||
p->monarch = initState.playerData[i].player->monarch;
|
||||
p->initiative = initState.playerData[i].player->initiative;
|
||||
p->surveilOffset = initState.playerData[i].player->surveilOffset;
|
||||
p->devotionOffset = initState.playerData[i].player->devotionOffset;
|
||||
p->lastChosenName = initState.playerData[i].player->lastChosenName;
|
||||
@@ -888,7 +915,7 @@ GameType Rules::strToGameMode(string s)
|
||||
if (s.compare("random2") == 0) return GAME_TYPE_RANDOM2;
|
||||
if (s.compare("random3") == 0) return GAME_TYPE_RANDOM3;
|
||||
if (s.compare("random5") == 0) return GAME_TYPE_RANDOM5;
|
||||
if (s.compare("random_commander") == 0) return GAME_TYPE_RANDOMCOMMANDER;
|
||||
if (s.compare("random_commander") == 0) return GAME_TYPE_RANDOMCOMMANDER;
|
||||
if (s.compare("horde") == 0) return GAME_TYPE_HORDE;
|
||||
if (s.compare("set_limited") == 0) return GAME_TYPE_SET_LIMITED;
|
||||
if (s.compare("story") == 0) return GAME_TYPE_STORY;
|
||||
|
||||
@@ -436,7 +436,7 @@ void TestSuiteGame::assertGame()
|
||||
handleResults(wasAI, error);
|
||||
|
||||
if(!error)
|
||||
Log("<span class=\"success\">==Test Succesful !==</span>");
|
||||
Log("<span class=\"success\">==Test Successful !==</span>");
|
||||
else
|
||||
Log("<span class=\"error\">==Test Failed !==</span>");
|
||||
#ifdef CAPTURE_STDERR
|
||||
|
||||
@@ -307,6 +307,11 @@ WEventplayerMonarch::WEventplayerMonarch(Player * player) :
|
||||
{
|
||||
}
|
||||
|
||||
WEventplayerInitiative::WEventplayerInitiative(Player * player) :
|
||||
player(player)
|
||||
{
|
||||
}
|
||||
|
||||
WEventplayerShuffled::WEventplayerShuffled(Player * player) :
|
||||
player(player)
|
||||
{
|
||||
@@ -663,6 +668,12 @@ Targetable * WEventplayerMonarch::getTarget(Player * player)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
Targetable * WEventplayerInitiative::getTarget(Player * player)
|
||||
{
|
||||
if (player) return player;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
Targetable * WEventplayerShuffled::getTarget(Player * player)
|
||||
{
|
||||
if (player) return player;
|
||||
|
||||
@@ -1373,6 +1373,10 @@ void WParsedInt::extendedParse(string s, Spell * spell, MTGCardInstance * card)
|
||||
{
|
||||
intValue = (s == "pdungeoncompleted")?card->controller()->dungeonCompleted:card->controller()->opponent()->dungeonCompleted;
|
||||
}
|
||||
else if (s == "pinitiative" || s == "oinitiative") // Which player has the initiative
|
||||
{
|
||||
intValue = (s == "pinitiative")?card->controller()->initiative:card->controller()->opponent()->initiative;
|
||||
}
|
||||
else if (s == "pwrtotatt" || s == "thstotatt")//count Total Power or toughness of attacking creatures (e.g. Battle Cry Goblin)
|
||||
{
|
||||
intValue = 0;
|
||||
|
||||
Reference in New Issue
Block a user