Added Avacyn Restored set

This commit is contained in:
North 2012-04-28 11:26:09 +03:00
parent 18b7ca8cbb
commit 0c1cccbd03
10 changed files with 327 additions and 200 deletions

View file

@ -1,15 +1,13 @@
package mage.client.cards; package mage.client.cards;
import java.io.InputStream;
import java.util.*;
import mage.Constants; import mage.Constants;
import mage.cards.Card; import mage.cards.Card;
import mage.cards.CardImpl; import mage.cards.CardImpl;
import mage.cards.ExpansionSet; import mage.cards.ExpansionSet;
import mage.sets.Sets; import mage.sets.Sets;
import mage.utils.CardUtil; import mage.utils.CardUtil;
import java.io.InputStream;
import java.util.*;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
/** /**
@ -179,10 +177,9 @@ public class CardsStorage {
readUnimplemented("ZEN", "/zen.txt", names, cards); readUnimplemented("ZEN", "/zen.txt", names, cards);
readUnimplemented("WWK", "/wwk.txt", names, cards); readUnimplemented("WWK", "/wwk.txt", names, cards);
readUnimplemented("ROE", "/roe.txt", names, cards); readUnimplemented("ROE", "/roe.txt", names, cards);
readUnimplemented("DKA", "/dka.txt", names, cards); readUnimplemented("AVR", "/avr.txt", names, cards);
names.clear(); names.clear();
names = null;
} }
return cards; return cards;
} }

View file

@ -1,12 +1,10 @@
package org.mage.plugins.card.dl.sources; package org.mage.plugins.card.dl.sources;
import org.mage.plugins.card.dl.DownloadJob;
import java.io.File; import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.Iterator; import java.util.Iterator;
import org.mage.plugins.card.dl.DownloadJob;
import static org.mage.plugins.card.dl.DownloadJob.fromURL; import static org.mage.plugins.card.dl.DownloadJob.fromURL;
import static org.mage.plugins.card.dl.DownloadJob.toFile; import static org.mage.plugins.card.dl.DownloadJob.toFile;
@ -17,7 +15,7 @@ public class GathererSets implements Iterable<DownloadJob> {
private static File outDir = DEFAULT_OUT_DIR; private static File outDir = DEFAULT_OUT_DIR;
private static final String[] symbols = {"10E", "HOP", "TMP", "INV", "PLS", "APC", "MRD", "DST", "5DN", "CHK", "BOK", "SOK", "RAV", "GPT", "DIS", "TSP", "TSB", "PLC", "FUT", "LRW", "MOR", "SHM", "EVE", "USG", "9ED", "8ED", "ONS"}; private static final String[] symbols = {"10E", "HOP", "TMP", "INV", "PLS", "APC", "MRD", "DST", "5DN", "CHK", "BOK", "SOK", "RAV", "GPT", "DIS", "TSP", "TSB", "PLC", "FUT", "LRW", "MOR", "SHM", "EVE", "USG", "9ED", "8ED", "ONS"};
private static final String[] withMythics = {"M10", "M11", "M12", "DDF", "ALA", "CFX", "ARB", "ZEN", "WWK", "ROE", "SOM", "MBS", "NPH", "ISD", "DKA"}; private static final String[] withMythics = {"M10", "M11", "M12", "DDF", "ALA", "CFX", "ARB", "ZEN", "WWK", "ROE", "SOM", "MBS", "NPH", "ISD", "DKA", "AVR"};
private static final HashMap<String, String> symbolsReplacements = new HashMap<String, String>(); private static final HashMap<String, String> symbolsReplacements = new HashMap<String, String>();
static { static {

View file

@ -1,9 +1,8 @@
package org.mage.plugins.card.dl.sources; package org.mage.plugins.card.dl.sources;
import org.mage.plugins.card.utils.CardImageUtils;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import org.mage.plugins.card.utils.CardImageUtils;
/** /**
* *
@ -15,6 +14,7 @@ public class MagicCardsImageSource implements CardImageSource {
private static final Map<String, String> setNameReplacement = new HashMap<String, String>() { private static final Map<String, String> setNameReplacement = new HashMap<String, String>() {
{ {
put("AVR", "avacyn-restored");
put("DKA", "dark-ascension"); put("DKA", "dark-ascension");
put("ISD", "innistrad"); put("ISD", "innistrad");
put("DDH", "duel-decks-ajani-vs-nicol-bolas"); put("DDH", "duel-decks-ajani-vs-nicol-bolas");

View file

@ -1,12 +1,11 @@
package org.mage.plugins.card.dl.sources; package org.mage.plugins.card.dl.sources;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;
import java.io.IOException; import java.io.IOException;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;
/** /**
* *
@ -28,6 +27,7 @@ public class WizardCardsImageSource implements CardImageSource {
public WizardCardsImageSource() { public WizardCardsImageSource() {
sets = new HashMap(); sets = new HashMap();
setsAliases = new HashMap(); setsAliases = new HashMap();
setsAliases.put("AVR", "avacynrestored/cig");
setsAliases.put("DKA", "darkascension/cig"); setsAliases.put("DKA", "darkascension/cig");
setsAliases.put("ISD", "innistrad/cig"); setsAliases.put("ISD", "innistrad/cig");
setsAliases.put("M12", "magic2012/cig"); setsAliases.put("M12", "magic2012/cig");

View file

@ -0,0 +1,244 @@
1|Angel of Glory's Rise
2|Angel of Jubilation
3|Angel's Mercy
4|Angelic Wall
5|Archangel
6|Avacyn, Angel of Hope
7|Banishing Stroke
8|Builder's Blessing
9|Call to Serve
10|Cathars' Crusade
11|Cathedral Sanctifier
12|Cloudshift
13|Commander's Authority
14|Cursebreak
15|Defang
16|Defy Death
17|Devout Chaplain
18|Divine Deflection
19|Emancipation Angel
20|Entreat the Angels
21|Farbog Explorer
22|Goldnight Commander
23|Goldnight Redeemer
24|Herald of War
25|Holy Justiciar
26|Leap of Faith
27|Midnight Duelist
28|Midvast Protector
29|Moonlight Geist
30|Moorland Inquisitor
31|Nearheath Pilgrim
32|Restoration Angel
33|Riders of Gavony
34|Righteous Blow
35|Seraph of Dawn
36|Silverblade Paladin
37|Spectral Gateguards
38|Terminus
39|Thraben Valiant
40|Voice of the Provinces
41|Zealous Strike
42|Alchemist's Apprentice
43|Amass the Components
44|Arcane Melee
45|Captain of the Mists
46|Crippling Chill
47|Deadeye Navigator
48|Devastation Tide
49|Dreadwaters
50|Elgaud Shieldmate
51|Favorable Winds
52|Fettergeist
53|Fleeting Distraction
54|Galvanic Alchemist
55|Geist Snatch
56|Ghostform
57|Ghostly Flicker
58|Ghostly Touch
59|Gryff Vanguard
60|Havengul Skaab
61|Infinite Reflection
62|Into the Void
63|Latch Seeker
64|Lone Revenant
65|Lunar Mystic
66|Mass Appeal
67|Mist Raven
68|Misthollow Griffin
69|Nephalia Smuggler
70|Outwit
71|Peel from Reality
72|Rotcrown Ghoul
73|Scrapskin Drake
74|Second Guess
75|Spectral Prison
76|Spirit Away
77|Stern Mentor
78|Stolen Goods
79|Tamiyo, the Moon Sage
80|Tandem Lookout
81|Temporal Mastery
82|Vanishment
83|Wingcrafter
84|Appetite for Brains
85|Barter in Blood
86|Blood Artist
87|Bloodflow Connoisseur
88|Bone Splinters
89|Butcher Ghoul
90|Corpse Traders
91|Crypt Creeper
92|Dark Impostor
93|Death Wind
94|Demonic Rising
95|Demonic Taskmaster
96|Demonlord of Ashmouth
97|Descent into Madness
98|Dread Slaver
99|Driver of the Dead
100|Essence Harvest
101|Evernight Shade
102|Exquisite Blood
103|Ghoulflesh
104|Gloom Surgeon
105|Grave Exchange
106|Griselbrand
107|Harvester of Souls
108|Homicidal Seclusion
109|Human Frailty
110|Hunted Ghoul
111|Killing Wave
112|Maalfeld Twins
113|Marrow Bats
114|Mental Agony
115|Necrobite
116|Polluted Dead
117|Predator's Gambit
118|Renegade Demon
119|Searchlight Geist
120|Soulcage Fiend
121|Treacherous Pit-Dweller
122|Triumph of Cruelty
123|Undead Executioner
124|Unhallowed Pact
125|Aggravate
126|Archwing Dragon
127|Banners Raised
128|Battle Hymn
129|Bonfire of the Damned
130|Burn at the Stake
131|Dangerous Wager
132|Demolish
133|Dual Casting
134|Falkenrath Exterminator
135|Fervent Cathar
136|Gang of Devils
137|Guise of Fire
138|Hanweir Lancer
139|Havengul Vampire
140|Heirs of Stromkirk
141|Hound of Griselbrand
142|Kessig Malcontents
143|Kruin Striker
144|Lightning Mauler
145|Lightning Prowess
146|Mad Prophet
147|Malicious Intent
148|Malignus
149|Pillar of Flame
150|Raging Poltergeist
151|Reforge the Soul
152|Riot Ringleader
153|Rite of Ruin
154|Rush of Blood
155|Scalding Devil
156|Somberwald Vigilante
157|Stonewright
158|Thatcher Revolt
159|Thunderbolt
160|Thunderous Wrath
161|Tibalt, the Fiend-Blooded
162|Tyrant of Discord
163|Uncanny Speed
164|Vexing Devil
165|Vigilante Justice
166|Zealous Conscripts
167|Abundant Growth
168|Blessings of Nature
169|Borderland Ranger
170|Bower Passage
171|Champion of Lambholt
172|Craterhoof Behemoth
173|Descendants' Path
174|Diregraf Escort
175|Druid's Familiar
176|Druids' Repository
177|Eaten by Spiders
178|Flowering Lumberknot
179|Geist Trappers
180|Gloomwidow
181|Grounded
182|Howlgeist
183|Joint Assault
184|Lair Delve
185|Natural End
186|Nettle Swine
187|Nightshade Peddler
188|Pathbreaker Wurm
189|Primal Surge
190|Rain of Thorns
191|Revenge of the Hunted
192|Sheltering Word
193|Snare the Skies
194|Somberwald Sage
195|Soul of the Harvest
196|Terrifying Presence
197|Timberland Guide
198|Triumph of Ferocity
199|Trusted Forcemage
200|Ulvenwald Tracker
201|Vorstclaw
202|Wandering Wolf
203|Wild Defiance
204|Wildwood Geist
205|Wolfir Avenger
206|Wolfir Silverheart
207|Yew Spirit
208|Bruna, Light of Alabaster
209|Gisela, Blade of Goldnight
210|Sigarda, Host of Herons
211|Angel's Tomb
212|Angelic Armaments
213|Bladed Bracers
214|Conjurer's Closet
215|Gallows at Willow Hill
216|Haunted Guardian
217|Moonsilver Spear
218|Narstad Scrapper
219|Otherworld Atlas
220|Scroll of Avacyn
221|Scroll of Griselbrand
222|Tormentor's Trident
223|Vanguard's Shield
224|Vessel of Endless Rest
225|Alchemist's Refuge
226|Cavern of Souls
227|Desolate Lighthouse
228|Seraph Sanctuary
229|Slayers' Stronghold
230|Plains
231|Plains
232|Plains
233|Island
234|Island
235|Island
236|Swamp
237|Swamp
238|Swamp
239|Mountain
240|Mountain
241|Mountain
242|Forest
243|Forest
244|Forest

View file

@ -1,171 +0,0 @@
1|Archangel's Light
2|Bar the Door
3|Break of Day
4|Burden of Guilt
5|Curse of Exhaustion
6|Elgaud Inquisitor
7|Faith's Shield
8|Gather the Townsfolk
9|Gavony Ironwright
10|Hollowhenge Spirit
11|Increasing Devotion
12|Lingering Souls
13a|Loyal Cathar
13b|Unhallowed Cathar
14|Midnight Guard
15|Niblis of the Mist
16|Niblis of the Urn
17|Ray of Revelation
18|Requiem Angel
19|Sanctuary Cat
20|Seance
21|Silverclaw Griffin
22|Skillful Lunge
23|Sudden Disappearance
24|Thalia, Guardian of Thraben
25|Thraben Doomsayer
26|Thraben Heretic
27|Artful Dodge
28|Beguiler of Wills
29|Bone to Ash
30|Call to the Kindred
31|Chant of the Skifsang
32|Chill of Foreboding
33|Counterlash
34|Curse of Echoes
35|Divination
36|Dungeon Geists
37|Geralf's Mindcrusher
38|Griptide
39|Havengul Runebinder
40|Headless Skaab
41|Increasing Confusion
42|Mystic Retrieval
43|Nephalia Seakite
44|Niblis of the Breath
45|Relentless Skaabs
46|Saving Grasp
47|Screeching Skaab
48|Secrets of the Dead
49|Shriekgeist
50a|Soul Seizer
50b|Ghastly Haunting
51|Stormbound Geist
52|Thought Scour
53|Tower Geist
54|Black Cat
55a|Chosen of Markov
55b|Markov's Servant
56|Curse of Misfortunes
57|Curse of Thirst
58|Deadly Allure
59|Death's Caress
60|Falkenrath Torturer
61|Farbog Boneflinger
62|Fiend of the Shadows
63|Geralf's Messenger
64|Gravecrawler
65|Gravepurge
66|Gruesome Discovery
67|Harrowing Journey
68|Highborn Ghoul
69|Increasing Ambition
70|Mikaeus, the Unhallowed
71a|Ravenous Demon
71b|Archdemon of Greed
72|Reap the Seagraf
73|Sightless Ghoul
74|Skirsdag Flayer
75|Spiteful Shadows
76|Tragic Slip
77|Undying Evil
78|Vengeful Vampire
79|Wakedancer
80|Zombie Apocalypse
81a|Afflicted Deserter
81b|Werewolf Ransacker
82|Alpha Brawl
83|Blood Feud
84|Burning Oil
85|Curse of Bloodletting
86|Erdwal Ripper
87|Faithless Looting
88|Fires of Undeath
89|Flayer of the Hatebound
90|Fling
91|Forge Devil
92|Heckling Fiends
93|Hellrider
94a|Hinterland Hermit
94b|Hinterland Scourge
95|Increasing Vengeance
96|Markov Blademaster
97|Markov Warlord
98a|Mondronen Shaman
98b|Tovolar's Magehunter
99|Moonveil Dragon
100|Nearheath Stalker
101|Pyreheart Wolf
102|Russet Wolves
103|Scorch the Fields
104|Shattered Perception
105|Talons of Falkenrath
106|Torch Fiend
107|Wrack with Madness
108|Briarpack Alpha
109|Clinging Mists
110|Crushing Vines
111|Dawntreader Elk
112|Deranged Outcast
113|Favor of the Woods
114|Feed the Pack
115|Ghoultree
116|Gravetiller Wurm
117|Grim Flowering
118|Hollowhenge Beast
119|Hunger of the Howlpack
120|Increasing Savagery
121|Kessig Recluse
122a|Lambholt Elder
122b|Silverpelt Werewolf
123|Lost in the Woods
124|Predator Ooze
125a|Scorned Villager
125b|Moonscarred Werewolf
126|Somberwald Dryad
127|Strangleroot Geist
128|Tracker's Instincts
129|Ulvenwald Bear
130|Village Survivors
131|Vorapede
132|Wild Hunger
133a|Wolfbitten Captive
133b|Krallenhorde Killer
134|Young Wolf
135|Diregraf Captain
136|Drogskol Captain
137|Drogskol Reaver
138|Falkenrath Aristocrat
139|Havengul Lich
140a|Huntmaster of the Fells
140b|Ravager of the Fells
141|Immerwolf
142|Sorin, Lord of Innistrad
143|Stromkirk Captain
144|Altar of the Lost
145|Avacyn's Collar
146a|Chalice of Life
146b|Chalice of Death
147a|Elbrus, the Binding Blade
147b|Withengar Unbound
148|Executioner's Hood
149|Grafdigger's Cage
150|Heavy Mattock
151|Helvault
152|Jar of Eyeballs
153|Warden of the Wall
154|Wolfhunter's Quiver
155|Evolving Wilds
156|Grim Backwoods
157|Haunted Fengraf
158|Vault of the Archangel

View file

@ -0,0 +1,56 @@
/*
* Copyright 2011 BetaSteward_at_googlemail.com. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
* permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this list of
* conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice, this list
* of conditions and the following disclaimer in the documentation and/or other materials
* provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* The views and conclusions contained in the software and documentation are those of the
* authors and should not be interpreted as representing official policies, either expressed
* or implied, of BetaSteward_at_googlemail.com.
*/
package mage.sets;
import java.util.GregorianCalendar;
import mage.Constants.SetType;
import mage.cards.ExpansionSet;
/**
*
* @author North
*/
public class AvacynRestored extends ExpansionSet {
private static final AvacynRestored fINSTANCE = new AvacynRestored();
public static AvacynRestored getInstance() {
return fINSTANCE;
}
private AvacynRestored() {
super("Avacyn Restored", "AVR", "seticon_mtgavr", "mage.sets.avacynrestored", new GregorianCalendar(2012, 4, 4).getTime(), SetType.EXPANSION);
this.blockName = "Innistrad";
this.hasBoosters = true;
this.numBoosterLands = 1;
this.numBoosterCommon = 10;
this.numBoosterUncommon = 3;
this.numBoosterRare = 1;
this.ratioBoosterMythic = 8;
}
}

View file

@ -69,6 +69,7 @@ public class Sets extends HashMap<String, ExpansionSet> {
creatureTypes = new TreeSet<String>(); creatureTypes = new TreeSet<String>();
this.addSet(AlaraReborn.getInstance()); this.addSet(AlaraReborn.getInstance());
this.addSet(Apocalypse.getInstance()); this.addSet(Apocalypse.getInstance());
this.addSet(AvacynRestored.getInstance());
this.addSet(BetrayersOfKamigawa.getInstance()); this.addSet(BetrayersOfKamigawa.getInstance());
this.addSet(ChampionsOfKamigawa.getInstance()); this.addSet(ChampionsOfKamigawa.getInstance());
this.addSet(Conflux.getInstance()); this.addSet(Conflux.getInstance());

View file

@ -41,3 +41,4 @@ Mirrodin Besieged|mirrodinbesieged|
New Phyrexia|newphyrexia| New Phyrexia|newphyrexia|
Innistrad|innistrad| Innistrad|innistrad|
Dark Ascension|darkascension| Dark Ascension|darkascension|
Avacyn Restored|avacynrestored|

View file

@ -1,4 +1,3 @@
Tenth Edition|10E|
Unlimited Edition|2ED| Unlimited Edition|2ED|
Revised Edition|3ED| Revised Edition|3ED|
Fourth Edition|4ED| Fourth Edition|4ED|
@ -7,12 +6,15 @@ Fifth Edition|5ED|
Classic Sixth Edition|6ED| Classic Sixth Edition|6ED|
Seventh Edition|7ED| Seventh Edition|7ED|
Eighth Edition|8ED| Eighth Edition|8ED|
Tenth Edition|10E|
Alliances|ALL| Alliances|ALL|
Apocalypse|APC| Apocalypse|APC|
Alara Reborn|ARB| Alara Reborn|ARB|
Arabian Nights|ARN| Arabian Nights|ARN|
Anthologies|ATH| Anthologies|ATH|
Antiquities|ATQ| Antiquities|ATQ|
Archenemy|ARC|
Avacyn Restored|AVR|
Betrayers of Kamigawa|BOK| Betrayers of Kamigawa|BOK|
Battle Royale Box Set|BRB| Battle Royale Box Set|BRB|
Beatdown Box Set|BTD| Beatdown Box Set|BTD|
@ -26,6 +28,7 @@ Dissension|DIS|
Deckmasters|DKM| Deckmasters|DKM|
The Dark|DRK| The Dark|DRK|
Duel Decks: Divine vs. Demonic|DVD| Duel Decks: Divine vs. Demonic|DVD|
Duel Decks: Elspeth vs. Tezzeret|DDF|
Duel Decks: Elves vs. Goblins|EVG| Duel Decks: Elves vs. Goblins|EVG|
Duel Decks: Garruk vs. Liliana|GVL| Duel Decks: Garruk vs. Liliana|GVL|
Duel Decks: Jace vs. Chandra|JVC| Duel Decks: Jace vs. Chandra|JVC|
@ -36,6 +39,7 @@ Fallen Empires|FEM|
Future Sight|FUT| Future Sight|FUT|
From the Vault: Dragons|FVD| From the Vault: Dragons|FVD|
From the Vault: Exiled|FVE| From the Vault: Exiled|FVE|
From the Vault: Relics|FVR|
Guildpact|GPT| Guildpact|GPT|
Homelands|HML| Homelands|HML|
Planechase|HOP| Planechase|HOP|
@ -51,6 +55,7 @@ Lorwyn|LRW|
Magic 2010|M10| Magic 2010|M10|
Magic 2011|M11| Magic 2011|M11|
Magic 2012|M12| Magic 2012|M12|
Magic: The Gathering-Commander|CMD|
Masters Edition II|ME2| Masters Edition II|ME2|
Masters Edition III|ME3| Masters Edition III|ME3|
Masters Edition IV|ME4| Masters Edition IV|ME4|
@ -59,6 +64,9 @@ Mirage|MIR|
Mercadian Masques|MMQ| Mercadian Masques|MMQ|
Morningtide|MOR| Morningtide|MOR|
Mirrodin|MRD| Mirrodin|MRD|
Mirrodin Besieged|MBS|
MTGO Vanguard|VGO|
New Phyrexia|NPH|
Ninth Edition|9ED| Ninth Edition|9ED|
Nemesis|NEM| Nemesis|NEM|
Odyssey|ODY| Odyssey|ODY|
@ -73,12 +81,13 @@ Premium Deck Series: Fire and Lightning|PD2|
Premium Deck Series: Slivers|PDS| Premium Deck Series: Slivers|PDS|
Ravnica: City of Guilds|RAV| Ravnica: City of Guilds|RAV|
Rise of the Eldrazi|ROE| Rise of the Eldrazi|ROE|
Starter 2000|S00| Scars of Mirrodin|SOM|
Starter 1999|S99|
Scourge|SCG| Scourge|SCG|
Shadowmoor|SHM| Shadowmoor|SHM|
Shards of Alara|ALA| Shards of Alara|ALA|
Saviors of Kamigawa|SOK| Saviors of Kamigawa|SOK|
Starter 2000|S00|
Starter 1999|S99|
Stronghold|STH| Stronghold|STH|
Tempest|TMP| Tempest|TMP|
Torment|TOR| Torment|TOR|
@ -93,15 +102,7 @@ Vanguard Set 1|VG1|
Vanguard Set 2|VG2| Vanguard Set 2|VG2|
Vanguard Set 3|VG3| Vanguard Set 3|VG3|
Vanguard Set 4|VG4| Vanguard Set 4|VG4|
MTGO Vanguard|VGO|
Visions|VIS| Visions|VIS|
Weatherlight|WTH| Weatherlight|WTH|
Worldwake|WWK| Worldwake|WWK|
Zendikar|ZEN| Zendikar|ZEN|
Archenemy|ARC|
Scars of Mirrodin|SOM|
From the Vault: Relics|FVR|
Duel Decks: Elspeth vs. Tezzeret|DDF|
Mirrodin Besieged|MBS|
New Phyrexia|NPH|
Magic: The Gathering-Commander|CMD|