diff --git a/Mage.Client/release/sample-decks/Decks to Beat/Goblins Deck Wins TDtB ST Apr 2011.mwDeck.dck b/Mage.Client/release/sample-decks/Decks to Beat/Goblins Deck Wins TDtB ST Apr 2011.mwDeck.dck index 42f03567142..a3db2606fde 100644 --- a/Mage.Client/release/sample-decks/Decks to Beat/Goblins Deck Wins TDtB ST Apr 2011.mwDeck.dck +++ b/Mage.Client/release/sample-decks/Decks to Beat/Goblins Deck Wins TDtB ST Apr 2011.mwDeck.dck @@ -10,7 +10,7 @@ 4 [ZEN:125] Goblin Bushwhacker 1 [DDE:69] Mountain 2 [ZEN:126] Goblin Guide -3 [MPRP:47] Burst Lightning +3 [P10:8] Burst Lightning 1 [ZEN:226] Teetering Peaks 1 [SOM:81] Arc Trail 1 [S00:102] Mountain diff --git a/Mage.Client/release/sample-decks/Top8 PT and Worlds decks (Standard)/Astral Slide 1 World Championship 2004 (San Francisco) ST 9-5-04.dck b/Mage.Client/release/sample-decks/Top8 PT and Worlds decks (Standard)/Astral Slide 1 World Championship 2004 (San Francisco) ST 9-5-04.dck index 8be991166b4..93ed4bf38c7 100644 --- a/Mage.Client/release/sample-decks/Top8 PT and Worlds decks (Standard)/Astral Slide 1 World Championship 2004 (San Francisco) ST 9-5-04.dck +++ b/Mage.Client/release/sample-decks/Top8 PT and Worlds decks (Standard)/Astral Slide 1 World Championship 2004 (San Francisco) ST 9-5-04.dck @@ -19,7 +19,7 @@ SB: 2 [DST:79] Oxidize SB: 1 [5DN:92] Rude Awakening SB: 2 [UDS:117] Plow Under -SB: 2 [MPRP:7] Oxidize +SB: 2 [P05:4] Oxidize SB: 2 [5ED:296] Circle of Protection: Red SB: 1 [MMA:160] Rude Awakening SB: 1 [9ED:11] Circle of Protection: Red diff --git a/Mage.Client/release/sample-decks/Top8 PT and Worlds decks (Standard)/Astral Slide 58 World Championship 2004 (San Francisco) ST 9-5-04.dck b/Mage.Client/release/sample-decks/Top8 PT and Worlds decks (Standard)/Astral Slide 58 World Championship 2004 (San Francisco) ST 9-5-04.dck index 37f1b0ec52e..365480e9428 100644 --- a/Mage.Client/release/sample-decks/Top8 PT and Worlds decks (Standard)/Astral Slide 58 World Championship 2004 (San Francisco) ST 9-5-04.dck +++ b/Mage.Client/release/sample-decks/Top8 PT and Worlds decks (Standard)/Astral Slide 58 World Championship 2004 (San Francisco) ST 9-5-04.dck @@ -22,7 +22,7 @@ 8 [UNH:136] Plains SB: 1 [DST:79] Oxidize SB: 2 [UDS:117] Plow Under -SB: 2 [MPRP:7] Oxidize +SB: 2 [P05:4] Oxidize SB: 1 [LEG:237] Relic Barrier SB: 2 [5DN:147] Relic Barrier SB: 2 [SCG:23] Silver Knight diff --git a/Mage.Client/src/main/java/mage/client/cards/DragCardGrid.java b/Mage.Client/src/main/java/mage/client/cards/DragCardGrid.java index def5233a4f4..f40709917c9 100644 --- a/Mage.Client/src/main/java/mage/client/cards/DragCardGrid.java +++ b/Mage.Client/src/main/java/mage/client/cards/DragCardGrid.java @@ -1498,7 +1498,7 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg JOptionPane.YES_NO_OPTION) == JOptionPane.NO_OPTION) { return; } - + // TODO: Why are these a HashMap? It can be a HashSet instead, as the value is never used in the code. Map pimpedSets = new HashMap<>(); Map pimpedCards = new HashMap<>(); pimpedSets.put("CP", 1); @@ -1567,8 +1567,19 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg pimpedSets.put("F17", 1); pimpedSets.put("F18", 1); + // Magic Player Rewards 2001-2011, except for 2002 (P02), which only contains tokens + pimpedSets.put("MPR", 1); + pimpedSets.put("P03", 1); + pimpedSets.put("P04", 1); + pimpedSets.put("P05", 1); + pimpedSets.put("P06", 1); + pimpedSets.put("P07", 1); + pimpedSets.put("P08", 1); + pimpedSets.put("P09", 1); + pimpedSets.put("P10", 1); + pimpedSets.put("P11", 1); + pimpedSets.put("MGDC", 1); - pimpedSets.put("MPRP", 1); pimpedSets.put("EXP", 1); pimpedSets.put("GPX", 1); pimpedSets.put("GRC", 1); diff --git a/Mage.Client/src/main/java/org/mage/card/arcane/ManaSymbols.java b/Mage.Client/src/main/java/org/mage/card/arcane/ManaSymbols.java index 1c60131a569..09abb216b54 100644 --- a/Mage.Client/src/main/java/org/mage/card/arcane/ManaSymbols.java +++ b/Mage.Client/src/main/java/org/mage/card/arcane/ManaSymbols.java @@ -66,7 +66,18 @@ public final class ManaSymbols { onlyMythics.add("EXP"); onlyMythics.add("MPS"); - withoutSymbols.add("MPRP"); + // Magic Player Reward sets + withoutSymbols.add("MPR"); + withoutSymbols.add("P03"); + withoutSymbols.add("P04"); + withoutSymbols.add("P05"); + withoutSymbols.add("P06"); + withoutSymbols.add("P07"); + withoutSymbols.add("P08"); + withoutSymbols.add("P09"); + withoutSymbols.add("P10"); + withoutSymbols.add("P11"); + } private static final Map setImagesExist = new HashMap<>(); diff --git a/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/GathererSets.java b/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/GathererSets.java index f8d71bf6156..93686c142e1 100644 --- a/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/GathererSets.java +++ b/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/GathererSets.java @@ -63,7 +63,7 @@ public class GathererSets implements Iterable { "W16", "W17", // "PALP" -- Gatherer does not have the set Asia Pacific Land Program // "ATH" -- has cards from many sets, symbol does not exist on gatherer - // "CLASH", "CP", "DPA", "PELP", "GPX", "GRC", "GUR", "H17", "JR", "MBP", "MGDC", "MLP", "MPRP", "PPRE", "SUS", "SWS", "WMCQ", // need to fix + // "CLASH", "CP", "DPA", "PELP", "GPX", "GRC", "GUR", "H17", "JR", "MBP", "MGDC", "MLP", "PPRE", "SUS", "SWS", "WMCQ", // need to fix "H09", "PD2", "PD3", "UNH", "CM1", "V11", "A25", "UST", "IMA", "DD2", "EVG", "DDC", "DDE", "DDD", "8EB", "9EB", "CHR", "G18", "DD3GVL", "S00", "S99", "UGL" // ok // current testing }; diff --git a/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/WizardCardsImageSource.java b/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/WizardCardsImageSource.java index 51586e8ca8b..b34fc273308 100644 --- a/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/WizardCardsImageSource.java +++ b/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/WizardCardsImageSource.java @@ -379,7 +379,7 @@ public enum WizardCardsImageSource implements CardImageSource { setsAliases.put("MM3", "Modern Masters 2017"); setsAliases.put("MMQ", "Mercadian Masques"); setsAliases.put("MOR", "Morningtide"); - setsAliases.put("MPRP", "Magic Player Rewards"); + // setsAliases.put("MPRP", "Magic Player Rewards"); setsAliases.put("MPS", "Masterpiece Series"); setsAliases.put("MRD", "Mirrodin"); setsAliases.put("NEM", "Nemesis"); diff --git a/Mage.Sets/src/mage/sets/MagicPlayerRewards.java b/Mage.Sets/src/mage/sets/MagicPlayerRewards.java deleted file mode 100644 index 09f320471f2..00000000000 --- a/Mage.Sets/src/mage/sets/MagicPlayerRewards.java +++ /dev/null @@ -1,77 +0,0 @@ - -package mage.sets; - -import mage.cards.CardGraphicInfo; -import mage.cards.ExpansionSet; -import mage.cards.FrameStyle; -import mage.constants.Rarity; -import mage.constants.SetType; - -public final class MagicPlayerRewards extends ExpansionSet { - - private static final MagicPlayerRewards instance = new MagicPlayerRewards(); - - public static MagicPlayerRewards getInstance() { - return instance; - } - - private MagicPlayerRewards() { - super("Magic Player Rewards", "MPRP", ExpansionSet.buildDate(1990, 1, 1), SetType.PROMOTIONAL); - this.hasBoosters = false; - this.hasBasicLands = false; - CardGraphicInfo graphicInfo = new CardGraphicInfo(FrameStyle.MPRP_FULL_ART_BASIC, false); - cards.add(new SetCardInfo("Bituminous Blast", 46, Rarity.SPECIAL, mage.cards.b.BituminousBlast.class, graphicInfo)); - cards.add(new SetCardInfo("Blightning", 36, Rarity.SPECIAL, mage.cards.b.Blightning.class, graphicInfo)); - cards.add(new SetCardInfo("Brave the Elements", 50, Rarity.SPECIAL, mage.cards.b.BraveTheElements.class, graphicInfo)); - cards.add(new SetCardInfo("Burst Lightning", 47, Rarity.SPECIAL, mage.cards.b.BurstLightning.class, graphicInfo)); - cards.add(new SetCardInfo("Cancel", 41, Rarity.SPECIAL, mage.cards.c.Cancel.class, graphicInfo)); - cards.add(new SetCardInfo("Celestial Purge", 45, Rarity.SPECIAL, mage.cards.c.CelestialPurge.class, graphicInfo)); - cards.add(new SetCardInfo("Condemn", 18, Rarity.SPECIAL, mage.cards.c.Condemn.class, graphicInfo)); - cards.add(new SetCardInfo("Corrupt", 30, Rarity.SPECIAL, mage.cards.c.Corrupt.class, graphicInfo)); - cards.add(new SetCardInfo("Cruel Edict", 21, Rarity.SPECIAL, mage.cards.c.CruelEdict.class, graphicInfo)); - cards.add(new SetCardInfo("Cryptic Command", 31, Rarity.SPECIAL, mage.cards.c.CrypticCommand.class, graphicInfo)); - cards.add(new SetCardInfo("Damnation", 24, Rarity.SPECIAL, mage.cards.d.Damnation.class, graphicInfo)); - cards.add(new SetCardInfo("Day of Judgment", 49, Rarity.SPECIAL, mage.cards.d.DayOfJudgment.class, graphicInfo)); - cards.add(new SetCardInfo("Disenchant", 22, Rarity.SPECIAL, mage.cards.d.Disenchant.class, graphicInfo)); - cards.add(new SetCardInfo("Doom Blade", 51, Rarity.SPECIAL, mage.cards.d.DoomBlade.class, graphicInfo)); - cards.add(new SetCardInfo("Fireball", 6, Rarity.SPECIAL, mage.cards.f.Fireball.class, graphicInfo)); - cards.add(new SetCardInfo("Flame Javelin", 32, Rarity.SPECIAL, mage.cards.f.FlameJavelin.class, graphicInfo)); - cards.add(new SetCardInfo("Giant Growth", 13, Rarity.SPECIAL, mage.cards.g.GiantGrowth.class, graphicInfo)); - cards.add(new SetCardInfo("Harmonize", 28, Rarity.SPECIAL, mage.cards.h.Harmonize.class, graphicInfo)); - cards.add(new SetCardInfo("Harrow", 48, Rarity.SPECIAL, mage.cards.h.Harrow.class, graphicInfo)); - cards.add(new SetCardInfo("Hinder", 11, Rarity.SPECIAL, mage.cards.h.Hinder.class, graphicInfo)); - cards.add(new SetCardInfo("Hypnotic Specter", 10, Rarity.SPECIAL, mage.cards.h.HypnoticSpecter.class)); - cards.add(new SetCardInfo("Incinerate", 26, Rarity.SPECIAL, mage.cards.i.Incinerate.class, graphicInfo)); - cards.add(new SetCardInfo("Infest", 43, Rarity.SPECIAL, mage.cards.i.Infest.class, graphicInfo)); - cards.add(new SetCardInfo("Lightning Bolt", 40, Rarity.SPECIAL, mage.cards.l.LightningBolt.class, graphicInfo)); - cards.add(new SetCardInfo("Lightning Helix", 16, Rarity.SPECIAL, mage.cards.l.LightningHelix.class, graphicInfo)); - cards.add(new SetCardInfo("Mana Leak", 8, Rarity.SPECIAL, mage.cards.m.ManaLeak.class, graphicInfo)); - cards.add(new SetCardInfo("Mana Tithe", 27, Rarity.SPECIAL, mage.cards.m.ManaTithe.class, graphicInfo)); - cards.add(new SetCardInfo("Mortify", 19, Rarity.SPECIAL, mage.cards.m.Mortify.class, graphicInfo)); - cards.add(new SetCardInfo("Nameless Inversion", 34, Rarity.SPECIAL, mage.cards.n.NamelessInversion.class, graphicInfo)); - cards.add(new SetCardInfo("Negate", 38, Rarity.SPECIAL, mage.cards.n.Negate.class, graphicInfo)); - cards.add(new SetCardInfo("Oxidize", 7, Rarity.SPECIAL, mage.cards.o.Oxidize.class, graphicInfo)); - cards.add(new SetCardInfo("Ponder", 29, Rarity.SPECIAL, mage.cards.p.Ponder.class, graphicInfo)); - cards.add(new SetCardInfo("Powder Keg", 3, Rarity.SPECIAL, mage.cards.p.PowderKeg.class)); - cards.add(new SetCardInfo("Psionic Blast", 20, Rarity.SPECIAL, mage.cards.p.PsionicBlast.class, graphicInfo)); - cards.add(new SetCardInfo("Psychatog", 4, Rarity.SPECIAL, mage.cards.p.Psychatog.class)); - cards.add(new SetCardInfo("Putrefy", 14, Rarity.SPECIAL, mage.cards.p.Putrefy.class, graphicInfo)); - cards.add(new SetCardInfo("Pyroclasm", 12, Rarity.SPECIAL, mage.cards.p.Pyroclasm.class, graphicInfo)); - cards.add(new SetCardInfo("Rampant Growth", 37, Rarity.SPECIAL, mage.cards.r.RampantGrowth.class, graphicInfo)); - cards.add(new SetCardInfo("Reciprocate", 9, Rarity.SPECIAL, mage.cards.r.Reciprocate.class, graphicInfo)); - cards.add(new SetCardInfo("Recollect", 23, Rarity.SPECIAL, mage.cards.r.Recollect.class, graphicInfo)); - cards.add(new SetCardInfo("Remove Soul", 35, Rarity.SPECIAL, mage.cards.r.RemoveSoul.class, graphicInfo)); - cards.add(new SetCardInfo("Searing Blaze", 53, Rarity.SPECIAL, mage.cards.s.SearingBlaze.class, graphicInfo)); - cards.add(new SetCardInfo("Sign in Blood", 42, Rarity.SPECIAL, mage.cards.s.SignInBlood.class, graphicInfo)); - cards.add(new SetCardInfo("Terminate", 39, Rarity.SPECIAL, mage.cards.t.Terminate.class, graphicInfo)); - cards.add(new SetCardInfo("Terror", 5, Rarity.SPECIAL, mage.cards.t.Terror.class, graphicInfo)); - cards.add(new SetCardInfo("Tidings", 25, Rarity.SPECIAL, mage.cards.t.Tidings.class, graphicInfo)); - cards.add(new SetCardInfo("Treasure Hunt", 52, Rarity.SPECIAL, mage.cards.t.TreasureHunt.class, graphicInfo)); - cards.add(new SetCardInfo("Unmake", 33, Rarity.SPECIAL, mage.cards.u.Unmake.class, graphicInfo)); - cards.add(new SetCardInfo("Voidmage Prodigy", 2, Rarity.SPECIAL, mage.cards.v.VoidmageProdigy.class)); - cards.add(new SetCardInfo("Volcanic Fallout", 44, Rarity.SPECIAL, mage.cards.v.VolcanicFallout.class, graphicInfo)); - cards.add(new SetCardInfo("Wasteland", 1, Rarity.SPECIAL, mage.cards.w.Wasteland.class, graphicInfo)); - cards.add(new SetCardInfo("Wrath of God", 17, Rarity.SPECIAL, mage.cards.w.WrathOfGod.class, graphicInfo)); - cards.add(new SetCardInfo("Zombify", 15, Rarity.SPECIAL, mage.cards.z.Zombify.class, graphicInfo)); - } -} diff --git a/Mage.Sets/src/mage/sets/MagicPlayerRewards2001.java b/Mage.Sets/src/mage/sets/MagicPlayerRewards2001.java new file mode 100644 index 00000000000..07cdc3bc229 --- /dev/null +++ b/Mage.Sets/src/mage/sets/MagicPlayerRewards2001.java @@ -0,0 +1,25 @@ +package mage.sets; + +import mage.cards.ExpansionSet; +import mage.constants.Rarity; +import mage.constants.SetType; + +/** + * https://scryfall.com/sets/mpr + */ +public class MagicPlayerRewards2001 extends ExpansionSet { + + private static final MagicPlayerRewards2001 instance = new MagicPlayerRewards2001(); + + public static MagicPlayerRewards2001 getInstance() { + return instance; + } + + private MagicPlayerRewards2001() { + super("Magic Player Rewards 2001", "MPR", ExpansionSet.buildDate(2001, 1, 1), SetType.PROMOTIONAL); + this.hasBoosters = false; + this.hasBasicLands = false; + + cards.add(new SetCardInfo("Wasteland", 1, Rarity.RARE, mage.cards.w.Wasteland.class)); + } +} diff --git a/Mage.Sets/src/mage/sets/MagicPlayerRewards2003.java b/Mage.Sets/src/mage/sets/MagicPlayerRewards2003.java new file mode 100644 index 00000000000..7afe968ef65 --- /dev/null +++ b/Mage.Sets/src/mage/sets/MagicPlayerRewards2003.java @@ -0,0 +1,25 @@ +package mage.sets; + +import mage.cards.ExpansionSet; +import mage.constants.Rarity; +import mage.constants.SetType; + +/** + * https://scryfall.com/sets/p03 + */ +public class MagicPlayerRewards2003 extends ExpansionSet { + + private static final MagicPlayerRewards2003 instance = new MagicPlayerRewards2003(); + + public static MagicPlayerRewards2003 getInstance() { + return instance; + } + + private MagicPlayerRewards2003() { + super("Magic Player Rewards 2003", "P03", ExpansionSet.buildDate(2003, 1, 1), SetType.PROMOTIONAL); + this.hasBoosters = false; + this.hasBasicLands = false; + + cards.add(new SetCardInfo("Voidmage Prodigy", 1, Rarity.RARE, mage.cards.v.VoidmageProdigy.class)); + } +} diff --git a/Mage.Sets/src/mage/sets/MagicPlayerRewards2004.java b/Mage.Sets/src/mage/sets/MagicPlayerRewards2004.java new file mode 100644 index 00000000000..d2ba1d0381a --- /dev/null +++ b/Mage.Sets/src/mage/sets/MagicPlayerRewards2004.java @@ -0,0 +1,25 @@ +package mage.sets; + +import mage.cards.ExpansionSet; +import mage.constants.Rarity; +import mage.constants.SetType; + +/** + * https://scryfall.com/sets/p04 + */ +public class MagicPlayerRewards2004 extends ExpansionSet { + + private static final MagicPlayerRewards2004 instance = new MagicPlayerRewards2004(); + + public static MagicPlayerRewards2004 getInstance() { + return instance; + } + + private MagicPlayerRewards2004() { + super("Magic Player Rewards 2004", "P04", ExpansionSet.buildDate(2004, 1, 1), SetType.PROMOTIONAL); + this.hasBoosters = false; + this.hasBasicLands = false; + + cards.add(new SetCardInfo("Powder Keg", 1, Rarity.RARE, mage.cards.p.PowderKeg.class)); + } +} diff --git a/Mage.Sets/src/mage/sets/MagicPlayerRewards2005.java b/Mage.Sets/src/mage/sets/MagicPlayerRewards2005.java new file mode 100644 index 00000000000..688cac308d1 --- /dev/null +++ b/Mage.Sets/src/mage/sets/MagicPlayerRewards2005.java @@ -0,0 +1,34 @@ +package mage.sets; + +import mage.cards.CardGraphicInfo; +import mage.cards.ExpansionSet; +import mage.cards.FrameStyle; +import mage.constants.Rarity; +import mage.constants.SetType; + +/** + * https://scryfall.com/sets/p05 + */ +public class MagicPlayerRewards2005 extends ExpansionSet { + + private static final MagicPlayerRewards2005 instance = new MagicPlayerRewards2005(); + + public static MagicPlayerRewards2005 getInstance() { + return instance; + } + + private MagicPlayerRewards2005() { + super("Magic Player Rewards 2005", "P05", ExpansionSet.buildDate(2005, 1, 1), SetType.PROMOTIONAL); + this.hasBoosters = false; + this.hasBasicLands = false; + + final CardGraphicInfo MPR_FULL_ART = new CardGraphicInfo(FrameStyle.MPRP_FULL_ART_BASIC, false); + + cards.add(new SetCardInfo("Fireball", 3, Rarity.RARE, mage.cards.f.Fireball.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Mana Leak", 5, Rarity.RARE, mage.cards.m.ManaLeak.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Oxidize", 4, Rarity.RARE, mage.cards.o.Oxidize.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Psychatog", 1, Rarity.RARE, mage.cards.p.Psychatog.class)); + cards.add(new SetCardInfo("Reciprocate", 6, Rarity.RARE, mage.cards.r.Reciprocate.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Terror", 2, Rarity.RARE, mage.cards.t.Terror.class, MPR_FULL_ART)); + } +} diff --git a/Mage.Sets/src/mage/sets/MagicPlayerRewards2006.java b/Mage.Sets/src/mage/sets/MagicPlayerRewards2006.java new file mode 100644 index 00000000000..cca81f3824c --- /dev/null +++ b/Mage.Sets/src/mage/sets/MagicPlayerRewards2006.java @@ -0,0 +1,35 @@ +package mage.sets; + +import mage.cards.CardGraphicInfo; +import mage.cards.ExpansionSet; +import mage.cards.FrameStyle; +import mage.constants.Rarity; +import mage.constants.SetType; + +/** + * https://scryfall.com/sets/p06 + */ +public class MagicPlayerRewards2006 extends ExpansionSet { + + private static final MagicPlayerRewards2006 instance = new MagicPlayerRewards2006(); + + public static MagicPlayerRewards2006 getInstance() { + return instance; + } + + private MagicPlayerRewards2006() { + super("Magic Player Rewards 2006", "P06", ExpansionSet.buildDate(2006, 1, 1), SetType.PROMOTIONAL); + this.hasBoosters = false; + this.hasBasicLands = false; + + final CardGraphicInfo MPR_FULL_ART = new CardGraphicInfo(FrameStyle.MPRP_FULL_ART_BASIC, false); + + cards.add(new SetCardInfo("Giant Growth", 4, Rarity.RARE, mage.cards.g.GiantGrowth.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Hinder", 2, Rarity.RARE, mage.cards.h.Hinder.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Hypnotic Specter", 1, Rarity.RARE, mage.cards.h.HypnoticSpecter.class)); + cards.add(new SetCardInfo("Lightning Helix", 7, Rarity.RARE, mage.cards.l.LightningHelix.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Putrefy", 5, Rarity.RARE, mage.cards.p.Putrefy.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Pyroclasm", 3, Rarity.RARE, mage.cards.p.Pyroclasm.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Zombify", 6, Rarity.RARE, mage.cards.z.Zombify.class, MPR_FULL_ART)); + } +} diff --git a/Mage.Sets/src/mage/sets/MagicPlayerRewards2007.java b/Mage.Sets/src/mage/sets/MagicPlayerRewards2007.java new file mode 100644 index 00000000000..5b5f0a933e5 --- /dev/null +++ b/Mage.Sets/src/mage/sets/MagicPlayerRewards2007.java @@ -0,0 +1,35 @@ +package mage.sets; + +import mage.cards.CardGraphicInfo; +import mage.cards.ExpansionSet; +import mage.cards.FrameStyle; +import mage.constants.Rarity; +import mage.constants.SetType; + +/** + * https://scryfall.com/sets/p07 + */ +public class MagicPlayerRewards2007 extends ExpansionSet { + + private static final MagicPlayerRewards2007 instance = new MagicPlayerRewards2007(); + + public static MagicPlayerRewards2007 getInstance() { + return instance; + } + + private MagicPlayerRewards2007() { + super("Magic Player Rewards 2007", "P07", ExpansionSet.buildDate(2007, 1, 1), SetType.PROMOTIONAL); + this.hasBoosters = false; + this.hasBasicLands = false; + + final CardGraphicInfo MPR_FULL_ART = new CardGraphicInfo(FrameStyle.MPRP_FULL_ART_BASIC, false); + + cards.add(new SetCardInfo("Condemn", 2, Rarity.RARE, mage.cards.c.Condemn.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Cruel Edict", 5, Rarity.RARE, mage.cards.c.CruelEdict.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Disenchant", 6, Rarity.RARE, mage.cards.d.Disenchant.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Mortify", 3, Rarity.RARE, mage.cards.m.Mortify.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Psionic Blast", 4, Rarity.RARE, mage.cards.p.PsionicBlast.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Recollect", 7, Rarity.RARE, mage.cards.r.Recollect.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Wrath of God", 1, Rarity.RARE, mage.cards.w.WrathOfGod.class, MPR_FULL_ART)); + } +} diff --git a/Mage.Sets/src/mage/sets/MagicPlayerRewards2008.java b/Mage.Sets/src/mage/sets/MagicPlayerRewards2008.java new file mode 100644 index 00000000000..716ec7b3ac2 --- /dev/null +++ b/Mage.Sets/src/mage/sets/MagicPlayerRewards2008.java @@ -0,0 +1,35 @@ +package mage.sets; + +import mage.cards.CardGraphicInfo; +import mage.cards.ExpansionSet; +import mage.cards.FrameStyle; +import mage.constants.Rarity; +import mage.constants.SetType; + +/** + * https://scryfall.com/sets/p08 + */ +public class MagicPlayerRewards2008 extends ExpansionSet { + + private static final MagicPlayerRewards2008 instance = new MagicPlayerRewards2008(); + + public static MagicPlayerRewards2008 getInstance() { + return instance; + } + + private MagicPlayerRewards2008() { + super("Magic Player Rewards 2008", "P08", ExpansionSet.buildDate(2008, 1, 1), SetType.PROMOTIONAL); + this.hasBoosters = false; + this.hasBasicLands = false; + + final CardGraphicInfo MPR_FULL_ART = new CardGraphicInfo(FrameStyle.MPRP_FULL_ART_BASIC, false); + + cards.add(new SetCardInfo("Corrupt", 7, Rarity.RARE, mage.cards.c.Corrupt.class)); + cards.add(new SetCardInfo("Damnation", 1, Rarity.RARE, mage.cards.d.Damnation.class)); + cards.add(new SetCardInfo("Harmonize", 5, Rarity.RARE, mage.cards.h.Harmonize.class)); + cards.add(new SetCardInfo("Incinerate", 3, Rarity.RARE, mage.cards.i.Incinerate.class)); + cards.add(new SetCardInfo("Mana Tithe", 4, Rarity.RARE, mage.cards.m.ManaTithe.class)); + cards.add(new SetCardInfo("Ponder", 6, Rarity.RARE, mage.cards.p.Ponder.class)); + cards.add(new SetCardInfo("Tidings", 2, Rarity.RARE, mage.cards.t.Tidings.class)); + } +} diff --git a/Mage.Sets/src/mage/sets/MagicPlayerRewards2009.java b/Mage.Sets/src/mage/sets/MagicPlayerRewards2009.java new file mode 100644 index 00000000000..c699fd4aced --- /dev/null +++ b/Mage.Sets/src/mage/sets/MagicPlayerRewards2009.java @@ -0,0 +1,37 @@ +package mage.sets; + +import mage.cards.CardGraphicInfo; +import mage.cards.ExpansionSet; +import mage.cards.FrameStyle; +import mage.constants.Rarity; +import mage.constants.SetType; + +/** + * https://scryfall.com/sets/p09 + */ +public class MagicPlayerRewards2009 extends ExpansionSet { + + private static final MagicPlayerRewards2009 instance = new MagicPlayerRewards2009(); + + public static MagicPlayerRewards2009 getInstance() { + return instance; + } + + private MagicPlayerRewards2009() { + super("Magic Player Rewards 2009", "P09", ExpansionSet.buildDate(2009, 1, 1), SetType.PROMOTIONAL); + this.hasBoosters = false; + this.hasBasicLands = false; + + final CardGraphicInfo MPR_FULL_ART = new CardGraphicInfo(FrameStyle.MPRP_FULL_ART_BASIC, false); + + cards.add(new SetCardInfo("Blightning", 6, Rarity.RARE, mage.cards.b.Blightning.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Cryptic Command", 1, Rarity.RARE, mage.cards.c.CrypticCommand.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Flame Javelin", 2, Rarity.RARE, mage.cards.f.FlameJavelin.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Nameless Inversion", 4, Rarity.RARE, mage.cards.n.NamelessInversion.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Negate", 8, Rarity.RARE, mage.cards.n.Negate.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Rampant Growth", 7, Rarity.RARE, mage.cards.r.RampantGrowth.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Remove Soul", 5, Rarity.RARE, mage.cards.r.RemoveSoul.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Terminate", 9, Rarity.RARE, mage.cards.t.Terminate.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Unmake", 3, Rarity.RARE, mage.cards.u.Unmake.class, MPR_FULL_ART)); + } +} diff --git a/Mage.Sets/src/mage/sets/MagicPlayerRewards2010.java b/Mage.Sets/src/mage/sets/MagicPlayerRewards2010.java new file mode 100644 index 00000000000..921b5787fb1 --- /dev/null +++ b/Mage.Sets/src/mage/sets/MagicPlayerRewards2010.java @@ -0,0 +1,37 @@ +package mage.sets; + +import mage.cards.CardGraphicInfo; +import mage.cards.ExpansionSet; +import mage.cards.FrameStyle; +import mage.constants.Rarity; +import mage.constants.SetType; + +/** + * https://scryfall.com/sets/p10 + */ +public class MagicPlayerRewards2010 extends ExpansionSet { + + private static final MagicPlayerRewards2010 instance = new MagicPlayerRewards2010(); + + public static MagicPlayerRewards2010 getInstance() { + return instance; + } + + private MagicPlayerRewards2010() { + super("Magic Player Rewards 2010", "P10", ExpansionSet.buildDate(2010, 1, 1), SetType.PROMOTIONAL); + this.hasBoosters = false; + this.hasBasicLands = false; + + final CardGraphicInfo MPR_FULL_ART = new CardGraphicInfo(FrameStyle.MPRP_FULL_ART_BASIC, false); + + cards.add(new SetCardInfo("Bituminous Blast", 7, Rarity.RARE, mage.cards.b.BituminousBlast.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Burst Lightning", 8, Rarity.RARE, mage.cards.b.BurstLightning.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Cancel", 2, Rarity.RARE, mage.cards.c.Cancel.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Celestial Purge", 6, Rarity.RARE, mage.cards.c.CelestialPurge.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Harrow", 9, Rarity.RARE, mage.cards.h.Harrow.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Infest", 4, Rarity.RARE, mage.cards.i.Infest.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Lightning Bolt", 1, Rarity.RARE, mage.cards.l.LightningBolt.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Sign in Blood", 3, Rarity.RARE, mage.cards.s.SignInBlood.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Volcanic Fallout", 5, Rarity.RARE, mage.cards.v.VolcanicFallout.class, MPR_FULL_ART)); + } +} diff --git a/Mage.Sets/src/mage/sets/MagicPlayerRewards2011.java b/Mage.Sets/src/mage/sets/MagicPlayerRewards2011.java new file mode 100644 index 00000000000..24e83675470 --- /dev/null +++ b/Mage.Sets/src/mage/sets/MagicPlayerRewards2011.java @@ -0,0 +1,33 @@ +package mage.sets; + +import mage.cards.CardGraphicInfo; +import mage.cards.ExpansionSet; +import mage.cards.FrameStyle; +import mage.constants.Rarity; +import mage.constants.SetType; + +/** + * https://scryfall.com/sets/p11 + */ +public class MagicPlayerRewards2011 extends ExpansionSet { + + private static final MagicPlayerRewards2011 instance = new MagicPlayerRewards2011(); + + public static MagicPlayerRewards2011 getInstance() { + return instance; + } + + private MagicPlayerRewards2011() { + super("Magic Player Rewards 2011", "P11", ExpansionSet.buildDate(2011, 1, 1), SetType.PROMOTIONAL); + this.hasBoosters = false; + this.hasBasicLands = false; + + final CardGraphicInfo MPR_FULL_ART = new CardGraphicInfo(FrameStyle.MPRP_FULL_ART_BASIC, false); + + cards.add(new SetCardInfo("Brave the Elements", 2, Rarity.RARE, mage.cards.b.BraveTheElements.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Day of Judgment", 1, Rarity.RARE, mage.cards.d.DayOfJudgment.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Doom Blade", 3, Rarity.RARE, mage.cards.d.DoomBlade.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Searing Blaze", 5, Rarity.RARE, mage.cards.s.SearingBlaze.class, MPR_FULL_ART)); + cards.add(new SetCardInfo("Treasure Hunt", 4, Rarity.RARE, mage.cards.t.TreasureHunt.class, MPR_FULL_ART)); + } +} diff --git a/Mage.Verify/src/main/java/mage/verify/MtgJson.java b/Mage.Verify/src/main/java/mage/verify/MtgJson.java index 2d186590b40..05af9030a55 100644 --- a/Mage.Verify/src/main/java/mage/verify/MtgJson.java +++ b/Mage.Verify/src/main/java/mage/verify/MtgJson.java @@ -31,7 +31,7 @@ public final class MtgJson { mtgJsonToXMageCodes.put("pWCQ", "WMCQ"); mtgJsonToXMageCodes.put("pSUS", "SUS"); mtgJsonToXMageCodes.put("pPRE", "PPRE"); - mtgJsonToXMageCodes.put("pMPR", "MPRP"); + // mtgJsonToXMageCodes.put("pMPR", "MPRP"); // TODO: The set was split into the individual sets mtgJsonToXMageCodes.put("pMEI", "MBP"); mtgJsonToXMageCodes.put("pGTW", "GRC"); // pGTW - Gateway = GRC (WPN + Gateway in one inner set) mtgJsonToXMageCodes.put("pWPN", "GRC"); // pWPN - Wizards Play Network = GRC (WPN + Gateway in one inner set)