From c4884e4715c83b0c43cf43ef76be41835debbe51 Mon Sep 17 00:00:00 2001 From: valfieri Date: Sun, 3 Nov 2019 14:16:15 +0100 Subject: [PATCH] Added DPA, PDP10, PDP11, PDP12, PDP13, PDP14, PMPS, PMPS06, PMPS07, PMPS07, PMPS08, PMPS09, PMPS10, PMPS11 sets and improved Android downloader. --- .../src/net/wagic/utils/ImgDownloader.java | 31 +- projects/mtg/bin/Res/sets/DPA/_cards.dat | 596 ++++++++++++++++++ projects/mtg/bin/Res/sets/PDP10/_cards.dat | 21 + projects/mtg/bin/Res/sets/PDP11/_cards.dat | 21 + projects/mtg/bin/Res/sets/PDP12/_cards.dat | 21 + projects/mtg/bin/Res/sets/PDP13/_cards.dat | 21 + projects/mtg/bin/Res/sets/PDP14/_cards.dat | 16 + projects/mtg/bin/Res/sets/PMPS/_cards.dat | 106 ++++ projects/mtg/bin/Res/sets/PMPS06/_cards.dat | 31 + projects/mtg/bin/Res/sets/PMPS07/_cards.dat | 31 + projects/mtg/bin/Res/sets/PMPS08/_cards.dat | 36 ++ projects/mtg/bin/Res/sets/PMPS09/_cards.dat | 31 + projects/mtg/bin/Res/sets/PMPS10/_cards.dat | 31 + projects/mtg/bin/Res/sets/PMPS11/_cards.dat | 31 + projects/mtg/bin/Res/sets/primitives/GS1.txt | 10 +- projects/mtg/bin/Res/sets/primitives/MH1.txt | 12 + .../Res/sets/primitives/MH1_unsupported.txt | 9 - projects/mtg/bin/Res/sets/primitives/PRM.txt | 50 +- .../bin/Res/sets/primitives/borderline.txt | 35 +- projects/mtg/bin/Res/sets/primitives/mtg.txt | 6 +- .../bin/Res/sets/primitives/unsupported.txt | 24 - 21 files changed, 1088 insertions(+), 82 deletions(-) create mode 100644 projects/mtg/bin/Res/sets/DPA/_cards.dat create mode 100644 projects/mtg/bin/Res/sets/PDP10/_cards.dat create mode 100644 projects/mtg/bin/Res/sets/PDP11/_cards.dat create mode 100644 projects/mtg/bin/Res/sets/PDP12/_cards.dat create mode 100644 projects/mtg/bin/Res/sets/PDP13/_cards.dat create mode 100644 projects/mtg/bin/Res/sets/PDP14/_cards.dat create mode 100644 projects/mtg/bin/Res/sets/PMPS/_cards.dat create mode 100644 projects/mtg/bin/Res/sets/PMPS06/_cards.dat create mode 100644 projects/mtg/bin/Res/sets/PMPS07/_cards.dat create mode 100644 projects/mtg/bin/Res/sets/PMPS08/_cards.dat create mode 100644 projects/mtg/bin/Res/sets/PMPS09/_cards.dat create mode 100644 projects/mtg/bin/Res/sets/PMPS10/_cards.dat create mode 100644 projects/mtg/bin/Res/sets/PMPS11/_cards.dat diff --git a/projects/mtg/Android/src/net/wagic/utils/ImgDownloader.java b/projects/mtg/Android/src/net/wagic/utils/ImgDownloader.java index fa8aea59b..2acfe4b72 100644 --- a/projects/mtg/Android/src/net/wagic/utils/ImgDownloader.java +++ b/projects/mtg/Android/src/net/wagic/utils/ImgDownloader.java @@ -1289,15 +1289,16 @@ public class ImgDownloader { || id.equals("17645t") || id.equals("17573t") || id.equals("17549t") || id.equals("17537t") || id.equals("17513t") || id.equals("17429t") || id.equals("17417t") || id.equals("17405t") || id.equals("17393t") || id.equals("17285t") || id.equals("17273t") || id.equals("17249t") || id.equals("17141t") || id.equals("17129t") || id.equals("17117t") - || id.equals("17105t") || id.equals("17093t") || id.equals("17081t")) + || id.equals("17105t") || id.equals("17093t") || id.equals("17081t") || id.equals("17866t")) cardurl = "https://deckmaster.info/images/cards/DDE/209162-hr.jpg"; else if(id.endsWith("53141t")) cardurl = "https://deckmaster.info/images/cards/C14/-487-hr.jpg"; else if(id.equals("53134t")) cardurl = "https://deckmaster.info/images/cards/DDD/201844-hr.jpg"; - else if(id.equals("16981t") || id.equals("16978t") || id.equals("16967t")) + else if(id.equals("16981t") || id.equals("16978t") || id.equals("16967t") || id.equals("17841t") + || id.equals("17850t") || id.equals("17852t")) cardurl = "https://deckmaster.info/images/cards/EVG/159047-hr.jpg"; - else if (id.equals("16975t")) + else if (id.equals("16975t") || id.equals("17848t")) cardurl = "https://deckmaster.info/images/cards/BNG/-10-hr.jpg"; else if (id.equals("16933t")) cardurl = "https://deckmaster.info/images/cards/WWK/-262-hr.jpg"; @@ -1325,6 +1326,8 @@ public class ImgDownloader { cardurl = "https://deckmaster.info/images/cards/GTC/-48-hr.jpg"; else if(id.equals("17061t")) cardurl = "https://img.scryfall.com/cards/large/front/a/c/acd51eed-bd5a-417a-811d-fbd1c08a3715.jpg?1561757812"; + else if(id.equals("17955")) + cardurl = "https://img.scryfall.com/cards/large/front/b/8/b86ac828-7b49-4663-a718-99fcac904568.jpg?1561756381"; return cardurl; } @@ -1530,6 +1533,8 @@ public class ImgDownloader { tokenurl = "https://deckmaster.info/images/cards/GK1_DIMIR/-6541-hr.jpg"; else if (id.equals("116384t") || id.equals("376564t") || id.equals("52993t")) tokenurl = "https://deckmaster.info/images/cards/TSP/-114916-hr.jpg"; + else if(id.equals("17841t") || id.equals("17850t") || id.equals("17852t")) + tokenurl = "https://deckmaster.info/images/cards/EVG/159047-hr.jpg"; else if(id.equals("383392t")) tokenurl = "https://deckmaster.info/images/cards/DDD/201842-hr.jpg"; else if (id.equals("5610t") || id.equals("416754t")) @@ -2269,7 +2274,10 @@ public class ImgDownloader { int k; if(scryset.equals("TD2") || scryset.equals("PRM") || scryset.equals("TD0") || scryset.equals("PZ1") || scryset.equals("PZ2") || scryset.equals("PHPR") || scryset.equals("PGRU") || scryset.equals("PIDW") || scryset.equals("ANA") || scryset.equals("HTR") - || scryset.equals("HTR17") || scryset.equals("PI13") || scryset.equals("PI14") || scryset.equals("PSAL") || scryset.equals("PS11")){ + || scryset.equals("HTR17") || scryset.equals("PI13") || scryset.equals("PI14") || scryset.equals("PSAL") || scryset.equals("PS11") + || scryset.equals("PDTP") || scryset.equals("PDP10") || scryset.equals("PDP11") || scryset.equals("PDP12") || scryset.equals("PDP13") + || scryset.equals("PDP14") || scryset.equals("DPA") || scryset.equals("PMPS") || scryset.equals("PMPS06") || scryset.equals("PMPS07") + || scryset.equals("PMPS08") || scryset.equals("PMPS09") || scryset.equals("PMPS10") || scryset.equals("PMPS11")){ try { doc = Jsoup.connect(imageurl + scryset.toLowerCase()).get(); Elements outlinks = doc.select("body a"); @@ -2451,7 +2459,10 @@ public class ImgDownloader { } } else if(targetres.equals("High") && !scryset.equals("TD2") && !scryset.equals("PRM") && !scryset.equals("TD0") && !scryset.equals("PZ2") && !scryset.equals("PHPR") && !scryset.equals("PGRU") && !scryset.equals("PGRU") && !scryset.equals("ANA") && !scryset.equals("HTR") - && !scryset.equals("HTR17") && !scryset.equals("PI13") && !scryset.equals("PI14") && !scryset.equals("PSAL") && !scryset.equals("PS11")){ + && !scryset.equals("HTR17") && !scryset.equals("PI13") && !scryset.equals("PI14") && !scryset.equals("PSAL") && !scryset.equals("PS11") + && !scryset.equals("PDTP") && !scryset.equals("PDP10") && !scryset.equals("PDP11") && !scryset.equals("PDP12") && !scryset.equals("PDP13") + && !scryset.equals("PDP14") && !scryset.equals("DPA") && !scryset.equals("PMPS") && !scryset.equals("PMPS06") && !scryset.equals("PMPS07") + && !scryset.equals("PMPS08") && !scryset.equals("PMPS09") && !scryset.equals("PMPS10") && !scryset.equals("PMPS11")){ try { doc = Jsoup.connect(imageurl + scryset.toLowerCase()).get(); Elements outlinks = doc.select("body a"); @@ -2558,7 +2569,10 @@ public class ImgDownloader { } } else if(!scryset.equals("TD2") && !scryset.equals("PRM") && !scryset.equals("TD0") && !scryset.equals("PZ1") && !scryset.equals("PZ2") && !scryset.equals("PHPR") && !scryset.equals("PGRU") && !scryset.equals("PGRU") && !scryset.equals("ANA") && !scryset.equals("HTR") - && !scryset.equals("HTR17") && !scryset.equals("PI13") && !scryset.equals("PI14") && !scryset.equals("PSAL") && !scryset.equals("PS11")) { + && !scryset.equals("HTR17") && !scryset.equals("PI13") && !scryset.equals("PI14") && !scryset.equals("PSAL") && !scryset.equals("PS11") + && !scryset.equals("PDTP") && !scryset.equals("PDP10") && !scryset.equals("PDP11") && !scryset.equals("PDP12") && !scryset.equals("PDP13") + && !scryset.equals("PDP14") && !scryset.equals("DPA") && !scryset.equals("PMPS") && !scryset.equals("PMPS06") && !scryset.equals("PMPS07") + && !scryset.equals("PMPS08") && !scryset.equals("PMPS09") && !scryset.equals("PMPS10") && !scryset.equals("PMPS11")){ try { doc = Jsoup.connect(imageurl + scryset.toLowerCase()).get(); } catch (Exception e) { @@ -2711,7 +2725,10 @@ public class ImgDownloader { String text = ""; if(scryset.equals("PRM") || scryset.equals("TD0") || scryset.equals("PZ1") || scryset.equals("PZ2") || scryset.equals("PHPR") || scryset.equals("PGRU") || scryset.equals("PGRU") || scryset.equals("ANA") || scryset.equals("HTR") || scryset.equals("HTR17") - || scryset.equals("PI13") || scryset.equals("PI14") || scryset.equals("PSAL") || scryset.equals("PS11")){ + || scryset.equals("PI13") || scryset.equals("PI14") || scryset.equals("PSAL") || scryset.equals("PS11") || scryset.equals("PDTP") + || scryset.equals("PDP10") || scryset.equals("PDP11") || scryset.equals("PDP12") || scryset.equals("PDP13") || scryset.equals("PDP14") + || scryset.equals("DPA") || scryset.equals("PMPS") || scryset.equals("PMPS06") || scryset.equals("PMPS07") || scryset.equals("PMPS08") + || scryset.equals("PMPS09") || scryset.equals("PMPS10") || scryset.equals("PMPS11")){ Elements metadata = doc.select("head meta"); if(metadata != null) { for (int j = 0; j < metadata.size(); j++){ diff --git a/projects/mtg/bin/Res/sets/DPA/_cards.dat b/projects/mtg/bin/Res/sets/DPA/_cards.dat new file mode 100644 index 000000000..84112f1a0 --- /dev/null +++ b/projects/mtg/bin/Res/sets/DPA/_cards.dat @@ -0,0 +1,596 @@ +[meta] +author=Wagic Team +name=Duels of the Planeswalkers +year=2010-06-04 +total=113 +[/meta] +[card] +primitive=Saproling +id=-17866 +rarity=T +[/card] +[card] +primitive=Warrior +id=-17852 +rarity=T +[/card] +[card] +primitive=Warrior +id=-17850 +rarity=T +[/card] +[card] +primitive=Wolf +id=-17848 +rarity=T +[/card] +[card] +primitive=Warrior +id=-17841 +rarity=T +[/card] +[card] +primitive=Air Elemental +id=17780 +rarity=U +[/card] +[card] +primitive=Boomerang +id=17781 +rarity=C +[/card] +[card] +primitive=Cancel +id=17782 +rarity=C +[/card] +[card] +primitive=Cloud Sprite +id=17783 +rarity=C +[/card] +[card] +primitive=Counterbore +id=17784 +rarity=R +[/card] +[card] +primitive=Deluge +id=17785 +rarity=U +[/card] +[card] +primitive=Denizen of the Deep +id=17786 +rarity=R +[/card] +[card] +primitive=Essence Scatter +id=17787 +rarity=C +[/card] +[card] +primitive=Evacuation +id=17788 +rarity=R +[/card] +[card] +primitive=Mahamoti Djinn +id=17789 +rarity=R +[/card] +[card] +primitive=Mind Control +id=17790 +rarity=U +[/card] +[card] +primitive=Mind Spring +id=17791 +rarity=R +[/card] +[card] +primitive=Negate +id=17792 +rarity=C +[/card] +[card] +primitive=Phantom Warrior +id=17793 +rarity=U +[/card] +[card] +primitive=Snapping Drake +id=17794 +rarity=C +[/card] +[card] +primitive=Thieving Magpie +id=17795 +rarity=U +[/card] +[card] +primitive=Unsummon +id=17796 +rarity=C +[/card] +[card] +primitive=Abyssal Specter +id=17797 +rarity=U +[/card] +[card] +primitive=Ascendant Evincar +id=17798 +rarity=R +[/card] +[card] +primitive=Consume Spirit +id=17799 +rarity=U +[/card] +[card] +primitive=Crowd of Cinders +id=17800 +rarity=U +[/card] +[card] +primitive=Drudge Skeletons +id=17801 +rarity=C +[/card] +[card] +primitive=Dusk Imp +id=17802 +rarity=C +[/card] +[card] +primitive=Essence Drain +id=17803 +rarity=C +[/card] +[card] +primitive=Eyeblight's Ending +id=17804 +rarity=C +[/card] +[card] +primitive=Megrim +id=17805 +rarity=U +[/card] +[card] +primitive=Mind Rot +id=17806 +rarity=C +[/card] +[card] +primitive=Mind Shatter +id=17807 +rarity=R +[/card] +[card] +primitive=Moonglove Winnower +id=17808 +rarity=C +[/card] +[card] +primitive=Mortivore +id=17809 +rarity=R +[/card] +[card] +primitive=Ravenous Rats +id=17810 +rarity=C +[/card] +[card] +primitive=Sengir Vampire +id=17811 +rarity=R +[/card] +[card] +primitive=Severed Legion +id=17812 +rarity=C +[/card] +[card] +primitive=Terror +id=17813 +rarity=C +[/card] +[card] +primitive=Underworld Dreams +id=17814 +rarity=R +[/card] +[card] +primitive=Unholy Strength +id=17815 +rarity=C +[/card] +[card] +primitive=Act of Treason +id=17816 +rarity=U +[/card] +[card] +primitive=Banefire +id=17817 +rarity=R +[/card] +[card] +primitive=Blaze +id=17818 +rarity=U +[/card] +[card] +primitive=Bloodmark Mentor +id=17819 +rarity=U +[/card] +[card] +primitive=Cinder Pyromancer +id=17820 +rarity=C +[/card] +[card] +primitive=Earth Elemental +id=17821 +rarity=U +[/card] +[card] +primitive=Enrage +id=17822 +rarity=U +[/card] +[card] +primitive=Furnace of Rath +id=17823 +rarity=R +[/card] +[card] +primitive=Goblin Piker +id=17824 +rarity=C +[/card] +[card] +primitive=Goblin Sky Raider +id=17825 +rarity=C +[/card] +[card] +primitive=Hill Giant +id=17826 +rarity=C +[/card] +[card] +primitive=Incinerate +id=17827 +rarity=C +[/card] +[card] +primitive=Kamahl, Pit Fighter +id=17828 +rarity=R +[/card] +[card] +primitive=Lightning Elemental +id=17829 +rarity=C +[/card] +[card] +primitive=Prodigal Pyromancer +id=17830 +rarity=U +[/card] +[card] +primitive=Rage Reflection +id=17831 +rarity=R +[/card] +[card] +primitive=Shivan Dragon +id=17832 +rarity=R +[/card] +[card] +primitive=Shock +id=17833 +rarity=C +[/card] +[card] +primitive=Blanchwood Armor +id=17834 +rarity=U +[/card] +[card] +primitive=Civic Wayfinder +id=17835 +rarity=C +[/card] +[card] +primitive=Drove of Elves +id=17836 +rarity=U +[/card] +[card] +primitive=Duskdale Wurm +id=17837 +rarity=U +[/card] +[card] +primitive=Elven Riders +id=17838 +rarity=U +[/card] +[card] +primitive=Elvish Champion +id=17839 +rarity=R +[/card] +[card] +primitive=Elvish Eulogist +id=17840 +rarity=C +[/card] +[card] +primitive=Elvish Promenade +id=17841 +rarity=U +[/card] +[card] +primitive=Elvish Visionary +id=17842 +rarity=C +[/card] +[card] +primitive=Elvish Warrior +id=17843 +rarity=C +[/card] +[card] +primitive=Gaea's Herald +id=17844 +rarity=R +[/card] +[card] +primitive=Giant Growth +id=17845 +rarity=C +[/card] +[card] +primitive=Giant Spider +id=17846 +rarity=C +[/card] +[card] +primitive=Greenweaver Druid +id=17847 +rarity=U +[/card] +[card] +primitive=Howl of the Night Pack +id=17848 +rarity=U +[/card] +[card] +primitive=Immaculate Magistrate +id=17849 +rarity=R +[/card] +[card] +primitive=Imperious Perfect +id=17850 +rarity=U +[/card] +[card] +primitive=Jagged-Scar Archers +id=17851 +rarity=U +[/card] +[card] +primitive=Lys Alana Huntmaster +id=17852 +rarity=C +[/card] +[card] +primitive=Molimo, Maro-Sorcerer +id=17853 +rarity=R +[/card] +[card] +primitive=Natural Spring +id=17854 +rarity=C +[/card] +[card] +primitive=Naturalize +id=17855 +rarity=C +[/card] +[card] +primitive=Nature's Spiral +id=17856 +rarity=U +[/card] +[card] +primitive=Overrun +id=17857 +rarity=U +[/card] +[card] +primitive=Rampant Growth +id=17858 +rarity=C +[/card] +[card] +primitive=River Boa +id=17859 +rarity=U +[/card] +[card] +primitive=Roughshod Mentor +id=17860 +rarity=U +[/card] +[card] +primitive=Runeclaw Bear +id=17861 +rarity=C +[/card] +[card] +primitive=Spined Wurm +id=17862 +rarity=C +[/card] +[card] +primitive=Talara's Battalion +id=17863 +rarity=R +[/card] +[card] +primitive=Trained Armodon +id=17864 +rarity=C +[/card] +[card] +primitive=Troll Ascetic +id=17865 +rarity=R +[/card] +[card] +primitive=Verdant Force +id=17866 +rarity=R +[/card] +[card] +primitive=Vigor +id=17867 +rarity=R +[/card] +[card] +primitive=Wall of Wood +id=17868 +rarity=C +[/card] +[card] +primitive=Coat of Arms +id=17869 +rarity=R +[/card] +[card] +primitive=Demon's Horn +id=17870 +rarity=U +[/card] +[card] +primitive=Dragon's Claw +id=17871 +rarity=U +[/card] +[card] +primitive=Kraken's Eye +id=17872 +rarity=U +[/card] +[card] +primitive=Loxodon Warhammer +id=17873 +rarity=R +[/card] +[card] +primitive=The Rack +id=17874 +rarity=U +[/card] +[card] +primitive=Wall of Spears +id=17875 +rarity=C +[/card] +[card] +primitive=Wurm's Tooth +id=17876 +rarity=U +[/card] +[card] +primitive=Island +id=17877 +rarity=L +[/card] +[card] +primitive=Island +id=17878 +rarity=L +[/card] +[card] +primitive=Island +id=17879 +rarity=L +[/card] +[card] +primitive=Island +id=17880 +rarity=L +[/card] +[card] +primitive=Swamp +id=17881 +rarity=L +[/card] +[card] +primitive=Swamp +id=17882 +rarity=L +[/card] +[card] +primitive=Swamp +id=17883 +rarity=L +[/card] +[card] +primitive=Swamp +id=17884 +rarity=L +[/card] +[card] +primitive=Mountain +id=17885 +rarity=L +[/card] +[card] +primitive=Mountain +id=17886 +rarity=L +[/card] +[card] +primitive=Mountain +id=17887 +rarity=L +[/card] +[card] +primitive=Mountain +id=17888 +rarity=L +[/card] +[card] +primitive=Forest +id=17889 +rarity=L +[/card] +[card] +primitive=Forest +id=17890 +rarity=L +[/card] +[card] +primitive=Forest +id=17891 +rarity=L +[/card] +[card] +primitive=Forest +id=17892 +rarity=L +[/card] \ No newline at end of file diff --git a/projects/mtg/bin/Res/sets/PDP10/_cards.dat b/projects/mtg/bin/Res/sets/PDP10/_cards.dat new file mode 100644 index 000000000..c911fd1ab --- /dev/null +++ b/projects/mtg/bin/Res/sets/PDP10/_cards.dat @@ -0,0 +1,21 @@ +[meta] +author=Wagic Team +name=Duels of the Planeswalker Promo 2009-2010 +year=2009-01-01 +total=3 +[/meta] +[card] +primitive=Garruk Wildspeaker +id=17955 +rarity=M +[/card] +[card] +primitive=Liliana Vess +id=17956 +rarity=M +[/card] +[card] +primitive=Nissa Revane +id=17957 +rarity=M +[/card] \ No newline at end of file diff --git a/projects/mtg/bin/Res/sets/PDP11/_cards.dat b/projects/mtg/bin/Res/sets/PDP11/_cards.dat new file mode 100644 index 000000000..0ba421eb8 --- /dev/null +++ b/projects/mtg/bin/Res/sets/PDP11/_cards.dat @@ -0,0 +1,21 @@ +[meta] +author=Wagic Team +name=Duels of the Planeswalkers 2011 +year=2011-01-01 +total=3 +[/meta] +[card] +primitive=Frost Titan +id=17893 +rarity=M +[/card] +[card] +primitive=Grave Titan +id=17894 +rarity=M +[/card] +[card] +primitive=Inferno Titan +id=17895 +rarity=M +[/card] \ No newline at end of file diff --git a/projects/mtg/bin/Res/sets/PDP12/_cards.dat b/projects/mtg/bin/Res/sets/PDP12/_cards.dat new file mode 100644 index 000000000..c315f7099 --- /dev/null +++ b/projects/mtg/bin/Res/sets/PDP12/_cards.dat @@ -0,0 +1,21 @@ +[meta] +author=Wagic Team +name=Duels of the Planeswalkers 2012 +year=2012-01-01 +total=3 +[/meta] +[card] +primitive=Primordial Hydra +id=17896 +rarity=M +[/card] +[card] +primitive=Serra Avatar +id=17897 +rarity=M +[/card] +[card] +primitive=Vampire Nocturnus +id=17898 +rarity=M +[/card] \ No newline at end of file diff --git a/projects/mtg/bin/Res/sets/PDP13/_cards.dat b/projects/mtg/bin/Res/sets/PDP13/_cards.dat new file mode 100644 index 000000000..83a54a055 --- /dev/null +++ b/projects/mtg/bin/Res/sets/PDP13/_cards.dat @@ -0,0 +1,21 @@ +[meta] +author=Wagic Team +name=Duels of the Planeswalkers 2013 +year=2013-01-01 +total=3 +[/meta] +[card] +primitive=Bonescythe Sliver +id=17899 +rarity=M +[/card] +[card] +primitive=Ogre Battledriver +id=17900 +rarity=M +[/card] +[card] +primitive=Scavenging Ooze +id=17901 +rarity=M +[/card] \ No newline at end of file diff --git a/projects/mtg/bin/Res/sets/PDP14/_cards.dat b/projects/mtg/bin/Res/sets/PDP14/_cards.dat new file mode 100644 index 000000000..d40912d59 --- /dev/null +++ b/projects/mtg/bin/Res/sets/PDP14/_cards.dat @@ -0,0 +1,16 @@ +[meta] +author=Wagic Team +name=Duels of the Planeswalkers 2014 +year=2014-01-01 +total=2 +[/meta] +[card] +primitive=Soul of Ravnica +id=17902 +rarity=M +[/card] +[card] +primitive=Soul of Zendikar +id=17903 +rarity=M +[/card] \ No newline at end of file diff --git a/projects/mtg/bin/Res/sets/PMPS/_cards.dat b/projects/mtg/bin/Res/sets/PMPS/_cards.dat new file mode 100644 index 000000000..67ba22d34 --- /dev/null +++ b/projects/mtg/bin/Res/sets/PMPS/_cards.dat @@ -0,0 +1,106 @@ +[meta] +author=Wagic Team +name=Magic Premiere Shop 2005 +year=2005-01-01 +total=20 +[/meta] +[card] +primitive=Plains +id=17904 +rarity=L +[/card] +[card] +primitive=Plains +id=17905 +rarity=L +[/card] +[card] +primitive=Plains +id=17906 +rarity=L +[/card] +[card] +primitive=Plains +id=17907 +rarity=L +[/card] +[card] +primitive=Island +id=17908 +rarity=L +[/card] +[card] +primitive=Island +id=17909 +rarity=L +[/card] +[card] +primitive=Island +id=17910 +rarity=L +[/card] +[card] +primitive=Island +id=17911 +rarity=L +[/card] +[card] +primitive=Swamp +id=17912 +rarity=L +[/card] +[card] +primitive=Swamp +id=17913 +rarity=L +[/card] +[card] +primitive=Swamp +id=17914 +rarity=L +[/card] +[card] +primitive=Swamp +id=17915 +rarity=L +[/card] +[card] +primitive=Mountain +id=17916 +rarity=L +[/card] +[card] +primitive=Mountain +id=17917 +rarity=L +[/card] +[card] +primitive=Mountain +id=17918 +rarity=L +[/card] +[card] +primitive=Mountain +id=17919 +rarity=L +[/card] +[card] +primitive=Forest +id=17920 +rarity=L +[/card] +[card] +primitive=Forest +id=17921 +rarity=L +[/card] +[card] +primitive=Forest +id=17922 +rarity=L +[/card] +[card] +primitive=Forest +id=17923 +rarity=L +[/card] \ No newline at end of file diff --git a/projects/mtg/bin/Res/sets/PMPS06/_cards.dat b/projects/mtg/bin/Res/sets/PMPS06/_cards.dat new file mode 100644 index 000000000..756b36a24 --- /dev/null +++ b/projects/mtg/bin/Res/sets/PMPS06/_cards.dat @@ -0,0 +1,31 @@ +[meta] +author=Wagic Team +name=Magic Premiere Shop 2006 +year=2006-01-01 +total=5 +[/meta] +[card] +primitive=Forest +id=17924 +rarity=L +[/card] +[card] +primitive=Island +id=17925 +rarity=L +[/card] +[card] +primitive=Mountain +id=17926 +rarity=L +[/card] +[card] +primitive=Plains +id=17927 +rarity=L +[/card] +[card] +primitive=Swamp +id=17928 +rarity=L +[/card] \ No newline at end of file diff --git a/projects/mtg/bin/Res/sets/PMPS07/_cards.dat b/projects/mtg/bin/Res/sets/PMPS07/_cards.dat new file mode 100644 index 000000000..52038de5e --- /dev/null +++ b/projects/mtg/bin/Res/sets/PMPS07/_cards.dat @@ -0,0 +1,31 @@ +[meta] +author=Wagic Team +name=Magic Premiere Shop 2007 +year=2007-01-01 +total=5 +[/meta] +[card] +primitive=Forest +id=17929 +rarity=L +[/card] +[card] +primitive=Island +id=17930 +rarity=L +[/card] +[card] +primitive=Mountain +id=17931 +rarity=L +[/card] +[card] +primitive=Plains +id=17932 +rarity=L +[/card] +[card] +primitive=Swamp +id=17933 +rarity=L +[/card] \ No newline at end of file diff --git a/projects/mtg/bin/Res/sets/PMPS08/_cards.dat b/projects/mtg/bin/Res/sets/PMPS08/_cards.dat new file mode 100644 index 000000000..9f927b1a8 --- /dev/null +++ b/projects/mtg/bin/Res/sets/PMPS08/_cards.dat @@ -0,0 +1,36 @@ +[meta] +author=Wagic Team +name=Magic Premiere Shop 2008 +year=2008-01-01 +total=6 +[/meta] +[card] +primitive=Forest +id=17934 +rarity=L +[/card] +[card] +primitive=Island +id=17935 +rarity=L +[/card] +[card] +primitive=Mountain +id=17936 +rarity=L +[/card] +[card] +primitive=Plains +id=17937 +rarity=L +[/card] +[card] +primitive=Swamp +id=17938 +rarity=L +[/card] +[card] +primitive=Jaya Ballard, Task Mage +id=17939 +rarity=R +[/card] \ No newline at end of file diff --git a/projects/mtg/bin/Res/sets/PMPS09/_cards.dat b/projects/mtg/bin/Res/sets/PMPS09/_cards.dat new file mode 100644 index 000000000..0b379984d --- /dev/null +++ b/projects/mtg/bin/Res/sets/PMPS09/_cards.dat @@ -0,0 +1,31 @@ +[meta] +author=Wagic Team +name=Magic Premiere Shop 2009 +year=2009-01-01 +total=5 +[/meta] +[card] +primitive=Forest +id=17940 +rarity=L +[/card] +[card] +primitive=Island +id=17941 +rarity=L +[/card] +[card] +primitive=Mountain +id=17942 +rarity=L +[/card] +[card] +primitive=Plains +id=17943 +rarity=L +[/card] +[card] +primitive=Swamp +id=17944 +rarity=L +[/card] \ No newline at end of file diff --git a/projects/mtg/bin/Res/sets/PMPS10/_cards.dat b/projects/mtg/bin/Res/sets/PMPS10/_cards.dat new file mode 100644 index 000000000..e002b38e8 --- /dev/null +++ b/projects/mtg/bin/Res/sets/PMPS10/_cards.dat @@ -0,0 +1,31 @@ +[meta] +author=Wagic Team +name=Magic Premiere Shop 2010 +year=2010-01-01 +total=5 +[/meta] +[card] +primitive=Forest +id=17945 +rarity=L +[/card] +[card] +primitive=Island +id=17946 +rarity=L +[/card] +[card] +primitive=Mountain +id=17947 +rarity=L +[/card] +[card] +primitive=Plains +id=17948 +rarity=L +[/card] +[card] +primitive=Swamp +id=17949 +rarity=L +[/card] \ No newline at end of file diff --git a/projects/mtg/bin/Res/sets/PMPS11/_cards.dat b/projects/mtg/bin/Res/sets/PMPS11/_cards.dat new file mode 100644 index 000000000..fd7e1a38b --- /dev/null +++ b/projects/mtg/bin/Res/sets/PMPS11/_cards.dat @@ -0,0 +1,31 @@ +[meta] +author=Wagic Team +name=Magic Premiere Shop 2011 +year=2011-01-01 +total=5 +[/meta] +[card] +primitive=Forest +id=17950 +rarity=L +[/card] +[card] +primitive=Island +id=17951 +rarity=L +[/card] +[card] +primitive=Mountain +id=17952 +rarity=L +[/card] +[card] +primitive=Plains +id=17953 +rarity=L +[/card] +[card] +primitive=Swamp +id=17954 +rarity=L +[/card] \ No newline at end of file diff --git a/projects/mtg/bin/Res/sets/primitives/GS1.txt b/projects/mtg/bin/Res/sets/primitives/GS1.txt index 25c3cfdda..64c26dfa7 100644 --- a/projects/mtg/bin/Res/sets/primitives/GS1.txt +++ b/projects/mtg/bin/Res/sets/primitives/GS1.txt @@ -51,7 +51,7 @@ toughness=1 name=Heavenly Qilin abilities=flying auto=@combat(attacking) source(this):flying target(other creature|myBattlefield) ueot -text=Flying. (This creature can't be blocked except by creatures with flying or reach.) / Whenever Heavenly Qilin attacks, another target creature you control gains flying until end of turn. +text=Flying. (This creature can't be blocked except by creatures with flying or reach.) -- Whenever Heavenly Qilin attacks, another target creature you control gains flying until end of turn. mana={2}{W} type=Creature subtype=Kiri @@ -110,7 +110,7 @@ toughness=4 name=Ancestor Dragon abilities=flying auto=@each blockers:life:type:creature[attacking]:mybattlefield controller -text=Flying. / Whenever one o more creatures you control attack, you gain 1 life for each attacking creature. +text=Flying. -- Whenever one o more creatures you control attack, you gain 1 life for each attacking creature. mana={4}{W}{W} type=Creature subtype=Dragon @@ -146,7 +146,7 @@ name=Rhythmic Water Vortex target=creature auto=moveTo(ownerhand) auto=may moveto(myhand) target(Mu Yanling|mylibrary,mygraveyard) && shuffle -text=Return up to two target creatures to their owner's hand. / Search your library and/or graveyard for a card named Mu Yanling, reveal it, and put it into your hand. If you searched your library this way, shuffle it. +text=Return up to two target creatures to their owner's hand. -- Search your library and/or graveyard for a card named Mu Yanling, reveal it, and put it into your hand. If you searched your library this way, shuffle it. mana={3}{U}{U} type=Sorcery [/card] @@ -211,7 +211,7 @@ toughness=4 name=Fire-Omen Crane abilities=flying auto=@combat(attacking) source(this):damage:1 target(creature|opponentBattlefield) -text=Flying. (This creature can't be blocked except by creatures with flying or reach.) / Whenever Fire-Omen Crane attacks, it deals 1 damage to target creature an opponent controls. +text=Flying. (This creature can't be blocked except by creatures with flying or reach.) -- Whenever Fire-Omen Crane attacks, it deals 1 damage to target creature an opponent controls. mana={3}{R}{R} type=Creature subtype=Bird Spirit @@ -222,7 +222,7 @@ toughness=3 name=Screeching Phoenix abilities=flying auto={2}{R}:all(creature|mybattlefield) 1/0 ueot -text=Flying. / {2}{R}: Creatures you control get +1/+0 until end of turn. +text=Flying. -- {2}{R}: Creatures you control get +1/+0 until end of turn. mana={4}{R}{R} type=Creature subtype=Phoenix diff --git a/projects/mtg/bin/Res/sets/primitives/MH1.txt b/projects/mtg/bin/Res/sets/primitives/MH1.txt index 7444a6d84..e46ed2aec 100644 --- a/projects/mtg/bin/Res/sets/primitives/MH1.txt +++ b/projects/mtg/bin/Res/sets/primitives/MH1.txt @@ -1864,4 +1864,16 @@ type=Creature subtype=Human Shaman power=2 toughness=2 +[/card] +[card] +name=Urza, Lord High Artificer +auto=token(Construct,Artifact Creature Construct,anyzone:type:artifact:mybattlefield/type:artifact:mybattlefield cdaactive,colorless) +auto={T(artifact|myBattlefield)}:add {U} +auto={5}:name(Suffle and cast) shuffle && reveal:1 optionone name(Reveal)if type(*|reveal)~morethan~0 then name(Check to cast) target(*|reveal) transforms((,newability[if type(*|mybattlefield)~morethan~0 then castcard(putinplay)])) else name(not a creature) target(*|reveal) donothing optiononeend optiontwo choice all(*|reveal) bottomoflibrary optiontwoend revealend +text=When Urza, Lord High Artificer enters the battlefield, create a 0/0 colorless Construct artifact creature token with "This creature gets +1/+1 for each artifact you control." -- Tap an untapped artifact you control: Add {U}. -- {5}: Shuffle your library, then exile the top card. Until end of turn, you may play that card without paying its mana cost. +mana={2}{U}{U} +type=Legendary Creature +subtype=Human Artificer +power=1 +toughness=4 [/card] \ No newline at end of file diff --git a/projects/mtg/bin/Res/sets/primitives/MH1_unsupported.txt b/projects/mtg/bin/Res/sets/primitives/MH1_unsupported.txt index 2a01c9ba7..c4c6da4c1 100644 --- a/projects/mtg/bin/Res/sets/primitives/MH1_unsupported.txt +++ b/projects/mtg/bin/Res/sets/primitives/MH1_unsupported.txt @@ -74,15 +74,6 @@ power=2 toughness=1 [/card] [card] -name=Urza, Lord High Artificer -text=When Urza, Lord High Artificer enters the battlefield, create a 0/0 colorless Construct artifact creature token with "This creature gets +1/+1 for each artifact you control." -- Tap an untapped artifact you control: Add {U}. -- {5}: Shuffle your library, then exile the top card. Until end of turn, you may play that card without paying its mana cost. -mana={2}{U}{U} -type=Legendary Creature -subtype=Human Artificer -power=1 -toughness=4 -[/card] -[card] name=Kaya's Guile text=Choose two — -- • Each opponent sacrifices a creature. -- • Exile all cards from each opponent's graveyard. -- • Create a 1/1 white and black Spirit creature token with flying. -- • You gain 4 life. -- Entwine 3 (Choose all if you pay the entwine cost.) mana={1}{W}{B} diff --git a/projects/mtg/bin/Res/sets/primitives/PRM.txt b/projects/mtg/bin/Res/sets/primitives/PRM.txt index 142aff009..f157f0944 100644 --- a/projects/mtg/bin/Res/sets/primitives/PRM.txt +++ b/projects/mtg/bin/Res/sets/primitives/PRM.txt @@ -37,7 +37,7 @@ abilities=flying facedown={3} autofacedown={target(*[white]|myhand)}:morph autofaceup=life:2 controller -text=Flying / Morph—Reveal a white card in your hand. (You may cast this card face down as a 2/2 creature for {3}. Turn it face up any time for its morph cost.) / When Watcher of the Roost is turned face up, you gain 2 life. +text=Flying -- Morph—Reveal a white card in your hand. (You may cast this card face down as a 2/2 creature for {3}. Turn it face up any time for its morph cost.) -- When Watcher of the Roost is turned face up, you gain 2 life. mana={2}{W} type=Creature subtype=Bird Soldier @@ -50,7 +50,7 @@ auto=maxCast(creature)0 opponent auto=maxCast(creature)0 controller auto={L:4}:bury(this) opponent auto={L:4}:bury(this) controller -text=Creature spells can’t be cast. / Pay 4 life: Destroy Aether Storm. It can’t be regenerated. Any player may activate this ability. +text=Creature spells can’t be cast. -- Pay 4 life: Destroy Aether Storm. It can’t be regenerated. Any player may activate this ability. mana={3}{U} type=Enchantment [/card] @@ -78,7 +78,7 @@ subtype=Jace [card] name=Phyrexian Metamorph auto=may copy NotATarget(creature,artifact) transform(artifact) forever -text=({U/P} can be paid with either {U} or 2 life.) / You may have Phyrexian Metamorph enter the battlefield as a copy of any artifact or creature on the battlefield, except it’s an artifact in addition to its other types. +text=({U/P} can be paid with either {U} or 2 life.) -- You may have Phyrexian Metamorph enter the battlefield as a copy of any artifact or creature on the battlefield, except it’s an artifact in addition to its other types. mana={3}{P(U)} type=Artifact Creature subtype=Shapeshifter @@ -98,7 +98,7 @@ type=Instant name=Sage-Eye Avengers auto=@movedTo(*[-creature]|mystack):1/1 ueot auto=@combat(attacking) source(this): may moveTo(ownerhand) target(creature[power<=this]) -text=Prowess (Whenever you cast a noncreature spell, this creature gets +1/+1 until end of turn.) / Whenever Sage-Eye Avengers attacks, you may return target creature to its owner’s hand if its power is less than Sage-Eye Avengers’s power. +text=Prowess (Whenever you cast a noncreature spell, this creature gets +1/+1 until end of turn.) -- Whenever Sage-Eye Avengers attacks, you may return target creature to its owner’s hand if its power is less than Sage-Eye Avengers’s power. mana={4}{U}{U} type=Creature subtype=Djinn Monk @@ -117,7 +117,7 @@ type=Sorcery [card] name=Shipbreaker Kraken auto=this(cantargetcard(*[-monstrous]) {6}{U}{U}:becomes(monstrous) forever && counter(1/1,4) && transforms((,newability[aslongas(Shipbreaker Kraken|myBattlefield) tap target(upto<4>[creature]|battlefield)frozen])) forever -text={6}{U}{U}: Monstrosity 4. (If this creature isn’t monstrous, put four +1/+1 counters on it and it becomes monstrous.) / When Shipbreaker Kraken becomes monstrous, tap up to four target creatures. Those creatures don’t untap during their controllers’ untap steps for as long as you control Shipbreaker Kraken. +text={6}{U}{U}: Monstrosity 4. (If this creature isn’t monstrous, put four +1/+1 counters on it and it becomes monstrous.) -- When Shipbreaker Kraken becomes monstrous, tap up to four target creatures. Those creatures don’t untap during their controllers’ untap steps for as long as you control Shipbreaker Kraken. mana={4}{U}{U} type=Creature subtype=Kraken @@ -179,7 +179,7 @@ abilities=deathtouch facedown={3} autofacedown={target(*[black]|myhand)}:morph autofaceup=target(player) life:-2 -text=Deathtouch / Morph—Reveal a black card in your hand. (You may cast this card face down as a 2/2 creature for {3}. Turn it face up any time for its morph cost.) / When Ruthless Ripper is turned face up, target player loses 2 life. +text=Deathtouch -- Morph—Reveal a black card in your hand. (You may cast this card face down as a 2/2 creature for {3}. Turn it face up any time for its morph cost.) -- When Ruthless Ripper is turned face up, target player loses 2 life. mana={B} type=Creature subtype=Human Assassin @@ -219,7 +219,7 @@ auto=kicker damage:X target(creature,player,planeswalker) kicker=multi{1} target=creature,player,planeswalker auto=damage:X -text=Multikicker {1} (You may pay an additional {1} any number of times as you cast this spell.) / Choose any target, then choose another target for each time this spell was kicked. Comet Storm deals X damage to each of them. +text=Multikicker {1} (You may pay an additional {1} any number of times as you cast this spell.) -- Choose any target, then choose another target for each time this spell was kicked. Comet Storm deals X damage to each of them. mana={X}{R}{R} type=Instant [/card] @@ -227,7 +227,7 @@ type=Instant name=Flamerush Rider other={2}{R}{R} name(Dash) auto=@combat(attacking) source(this):clone((other creature[attacking;tapped]) with(unearth,haste[attacking])) -text=Whenever Flamerush Rider attacks, create a token that’s a copy of another target attacking creature and that’s tapped and attacking. Exile the token at end of combat. / Dash {2}{R}{R} (You may cast this spell for its dash cost. If you do, it gains haste, and it’s returned from the battlefield to its owner’s hand at the beginning of the next end step.) +text=Whenever Flamerush Rider attacks, create a token that’s a copy of another target attacking creature and that’s tapped and attacking. Exile the token at end of combat. -- Dash {2}{R}{R} (You may cast this spell for its dash cost. If you do, it gains haste, and it’s returned from the battlefield to its owner’s hand at the beginning of the next end step.) mana={4}{R} type=Creature subtype=Human Warrior @@ -239,7 +239,7 @@ name=Exquisite Firecraft target=creature,player,planeswalker auto=damage:4 auto=if type(*[instant;sorcery]|mygraveyard)~morethan~1 then nofizzle -text=Exquisite Firecraft deals 4 damage to any target. / Spell mastery — If there are two or more instant and/or sorcery cards in your graveyard, this spell can’t be countered. +text=Exquisite Firecraft deals 4 damage to any target. -- Spell mastery — If there are two or more instant and/or sorcery cards in your graveyard, this spell can’t be countered. mana={1}{R}{R} type=Sorcery [/card] @@ -265,7 +265,7 @@ type=Sorcery name=Wildfire Eternal auto=@combat(blocked) source(this):life:-4 opponent auto=@combat(notblocked) source(this):target(*[instant;sorcery]|myHand) and! ( activate castcard(normal) )! -text=Afflict 4 (Whenever this creature becomes blocked, defending player loses 4 life.) / Whenever Wildfire Eternal attacks and isn’t blocked, you may cast an instant or sorcery card from your hand without paying its mana cost. +text=Afflict 4 (Whenever this creature becomes blocked, defending player loses 4 life.) -- Whenever Wildfire Eternal attacks and isn’t blocked, you may cast an instant or sorcery card from your hand without paying its mana cost. mana={3}{R} type=Creature subtype=Zombie Jackal Cleric @@ -306,7 +306,7 @@ name=Foe-Razer Regent abilities=flying auto=@movedTo(this|mybattlefield) from(myHand):all(trigger[to]) transforms((,newability[choice name(Fight target creature you don't control) dynamicability target(creature|opponentBattlefield)])) forever auto=@lord(creature|mybattlefield) dynamicability target(creature|opponentBattlefield):all(trigger[to]) endofturn:counter(1/1,2) -text=Flying / When Foe-Razer Regent enters the battlefield, you may have it fight target creature you don’t control. / Whenever a creature you control fights, put two +1/+1 counters on it at the beginning of the next end step. +text=Flying -- When Foe-Razer Regent enters the battlefield, you may have it fight target creature you don’t control. -- Whenever a creature you control fights, put two +1/+1 counters on it at the beginning of the next end step. mana={5}{G}{G} type=Creature subtype=Dragon @@ -317,7 +317,7 @@ toughness=5 name=Nessian Wilds Ravager abilities=flying auto=ability$!choice name(Tribute 6) all(mystored) counter(1/1,6) _ choice name(May fight another target creature) may transforms((,newability[target(creature) dynamicability])) ueot opponent !$ opponent -text=Tribute 6 (As this creature enters the battlefield, an opponent of your choice may put six +1/+1 counters on it.) / When Nessian Wilds Ravager enters the battlefield, if tribute wasn’t paid, you may have Nessian Wilds Ravager fight another target creature. (Each deals damage equal to its power to the other.) +text=Tribute 6 (As this creature enters the battlefield, an opponent of your choice may put six +1/+1 counters on it.) -- When Nessian Wilds Ravager enters the battlefield, if tribute wasn’t paid, you may have Nessian Wilds Ravager fight another target creature. (Each deals damage equal to its power to the other.) mana={4}{G}{G} type=Creature subtype=Hydra @@ -346,7 +346,7 @@ name=Tinder Wall abilities=defender auto={S}:add {R}{R} auto={R}{S}:damage:2 target(creature[blocked]) -text=Defender (This creature can’t attack.) / Sacrifice Tinder Wall: Add {R}{R}. / {R}, Sacrifice Tinder Wall: It deals 2 damage to target creature it’s blocking. +text=Defender (This creature can’t attack.) -- Sacrifice Tinder Wall: Add {R}{R}. -- {R}, Sacrifice Tinder Wall: It deals 2 damage to target creature it’s blocking. mana={G} type=Creature subtype=Plant Wall @@ -358,7 +358,7 @@ name=Breaking // Entering auto=choice {U}{B}:deplete:8 target(player) auto=choice {4}{B}{R}:target(creature|graveyard) moveTo(mybattlefield) && transforms((,newability,haste)) ueot auto=choice {U}{B}{4}{B}{R}:deplete:8 target(player) then target(creature|graveyard) moveTo(mybattlefield) && transforms((,newability,haste)) ueot -text=Target player puts the top eight cards of their library into their graveyard. / Put a creature card from a graveyard onto the battlefield under your control. It gains haste until end of turn. / Fuse (You may cast one or both halves of this card from your hand.) +text=Target player puts the top eight cards of their library into their graveyard. -- Put a creature card from a graveyard onto the battlefield under your control. It gains haste until end of turn. -- Fuse (You may cast one or both halves of this card from your hand.) mana={0} type=Sorcery [/card] @@ -375,7 +375,7 @@ type=Instant name=Fire // Ice auto=choice {1}{R}:damage:1 target(creature,player,planeswalker) && damage:1 target(creature,player,planeswalker) auto=choice {1}{U}:tap target(*|battlefield) && draw:1 controller -text=Fire deals 2 damage divided as you choose among one or two targets. / Tap target permanent. Draw a card. +text=Fire deals 2 damage divided as you choose among one or two targets. -- Tap target permanent. Draw a card. mana={0} type=Instant [/card] @@ -392,7 +392,7 @@ type=Instant name=Karador, Ghost Chieftain anyzone=foreach(creature|mygraveyard) changecost(colorless:-1) forcedalive auto=lord(creature[maxCast(creature)1]|mygraveyard) canPlayFromGraveyard -text=This spell costs {1} less to cast for each creature card in your graveyard. / During each of your turns, you may cast one creature card from your graveyard. +text=This spell costs {1} less to cast for each creature card in your graveyard. -- During each of your turns, you may cast one creature card from your graveyard. mana={5}{B}{G}{W} type=Legendary Creature subtype=Centaur Spirit @@ -403,7 +403,7 @@ toughness=4 name=Life // Death auto=choice {G}:lord(land|myBattlefield) becomes(Creature,1/1) ueot auto=choice {1}{B}:target (creature|myGraveyard) moveTo(myBattlefield) then life:-manacost controller -text=All lands you control become 1/1 creatures until end of turn. They’re still lands. / Return target creature card from your graveyard to the battlefield. You lose life equal to its converted mana cost. +text=All lands you control become 1/1 creatures until end of turn. They’re still lands. -- Return target creature card from your graveyard to the battlefield. You lose life equal to its converted mana cost. mana={0} type=Sorcery [/card] @@ -411,7 +411,7 @@ type=Sorcery name=Nightveil Specter abilities=flying auto=@combatdamaged(player) from(this):moveto(exile) and!( transforms((,canplayfromexile)))! all(*[zpos=1]|mylibrary) -text=Whenever Nightveil Specter deals combat damage to a player, that player exiles the top card of their library. / You may play cards exiled with Nightveil Specter. +text=Whenever Nightveil Specter deals combat damage to a player, that player exiles the top card of their library. -- You may play cards exiled with Nightveil Specter. mana={UB}{UB}{UB} type=Creature subtype=Specter @@ -434,7 +434,7 @@ name=Simic Ascendancy auto={1}{G}{U}:counter(1/1,1) target(creature|myBattlefield) auto=@counter(1/1,1) target(creature|myBattlefield):counter(0/0,1,growth) all(this) auto=@each my upkeep:this(counter{0/0.1.growth}>=20)while wingame -text={1}{G}{U}: Put a +1/+1 counter on target creature you control. / Whenever one or more +1/+1 counters are put on a creature you control, put that many growth counters on Simic Ascendancy. / At the beginning of your upkeep, if Simic Ascendancy has twenty or more growth counters on it, you win the game. +text={1}{G}{U}: Put a +1/+1 counter on target creature you control. -- Whenever one or more +1/+1 counters are put on a creature you control, put that many growth counters on Simic Ascendancy. -- At the beginning of your upkeep, if Simic Ascendancy has twenty or more growth counters on it, you win the game. mana={G}{U} type=Enchantment [/card] @@ -442,7 +442,7 @@ type=Enchantment name=Vexing Shusher abilities=nofizzle auto={RG}: target(*[-land]|stack) nofizzle -text=This spell can’t be countered. / {R/G}: Target spell can’t be countered. +text=This spell can’t be countered. -- {R/G}: Target spell can’t be countered. mana={RG}{RG} type=Creature subtype=Goblin Shaman @@ -464,7 +464,7 @@ name=Dragon Throne of Tarkir auto={3}:equip auto=teach(creature) defender auto=teach(creature) {2}{T}:lord(other creature|myBattlefield) dynamicability ueot -text=Equipped creature has defender and “{2}, {T}: Other creatures you control gain trample and get +X/+X until end of turn, where X is this creature’s power.” / Equip {3} +text=Equipped creature has defender and "{2}, {T}: Other creatures you control gain trample and get +X/+X until end of turn, where X is this creature’s power." -- Equip {3} mana={4} type=Legendary Artifact subtype=Equipment @@ -474,7 +474,7 @@ name=Gate Colossus anyzone=foreach(land[Gate]|myBattlefield) changecost(colorless:-1) forcedalive auto=cantbeblockedby(creature[power>=2]) autograveyard=@movedTo(land[Gate]|myBattlefield):may moveTo(myLibray) -text=This spell costs {1} less to cast for each Gate you control. / Gate Colossus can’t be blocked by creatures with power 2 or less. / Whenever a Gate enters the battlefield under your control, you may put Gate Colossus from your graveyard on top of your library. +text=This spell costs {1} less to cast for each Gate you control. -- Gate Colossus can’t be blocked by creatures with power 2 or less. -- Whenever a Gate enters the battlefield under your control, you may put Gate Colossus from your graveyard on top of your library. mana={8} type=Artifact Creature subtype=Construct @@ -488,7 +488,7 @@ auto={T}:Add{U} auto={T}:Add{B} auto={T}:Add{R} auto={T}:Add{G} -text={T}: Add one mana of any color to your mana pool. / This card is banned. +text={T}: Add one mana of any color to your mana pool. -- This card is banned. mana={0} type=Artifact [/card] @@ -507,7 +507,7 @@ name=Pathrazer of Ulamog abilities=menace abilities=oneblocker auto=@combat(attacking) source(this):name(Annihilate 3) ability$!name(sacrifice) notatarget(<3>*|mybattlefield) sacrifice!$ opponent -text=Annihilator 3 (Whenever this creature attacks, defending player sacrifices three permanents.) / Pathrazer of Ulamog can’t be blocked except by three or more creatures. +text=Annihilator 3 (Whenever this creature attacks, defending player sacrifices three permanents.) -- Pathrazer of Ulamog can’t be blocked except by three or more creatures. mana={11} type=Creature subtype=Eldrazi @@ -541,6 +541,6 @@ auto=tap(noevent) auto={T}:Add {1} aicode=activate moveTo(myBattlefield) target(land[Gate]|myLibrary) auto={H(this|mybattlefield)}{3}{T}:=name(search a gate) reveal:plibrarycount optionone name(choose gate) target(land[Gate]|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 then aslongas(Selesnya Guildgate,Izzet Guildgate,Golgari Guildgate, Dimir Guildgate,Boros Guildgate,Simic Guildgate,Rakdos Guildgate,Orzhov Guildgate,Gruul Guildgate,Azorius Guildgate|myBattlefield) while wingame -text=Maze’s End enters the battlefield tapped. / {T}:Add {C}. / {3},{T},Return Maze’s End to its owner’s hand: Search your library for a Gate card, put it onto the battlefield, then shuffle your library. If you control ten or more Gates with different names, you win the game. +text=Maze’s End enters the battlefield tapped. -- {T}:Add {C}. -- {3},{T},Return Maze’s End to its owner’s hand: Search your library for a Gate card, put it onto the battlefield, then shuffle your library. If you control ten or more Gates with different names, you win the game. type=Land [/card] \ No newline at end of file diff --git a/projects/mtg/bin/Res/sets/primitives/borderline.txt b/projects/mtg/bin/Res/sets/primitives/borderline.txt index 02a07b14d..242854842 100644 --- a/projects/mtg/bin/Res/sets/primitives/borderline.txt +++ b/projects/mtg/bin/Res/sets/primitives/borderline.txt @@ -614,12 +614,20 @@ type=Instant [/card] [card] name=Coat of Arms -auto=lord(creature|battlefield) foreach(other creature[share!type!]|battlefield) 1/1 +auto=lord(creature|battlefield) foreach(other creature[share!subtype!]|battlefield) 1/1 text=Each creature gets +1/+1 for each other creature on the battlefield that shares at least one creature type with it. (For example, it two Goblin Warriors and a Goblin Shaman are on the battlefield, each gets +2/+2.) mana={5} type=Artifact [/card] [card] +name=Prototype Portal +auto=may name(Imprint) moveTo(myexile) notatarget(artifact|myhand) +auto={T}: transforms((,newability[pay[[{manacost}]] name(pay manacost) clone target(artifact|myexile) donothing?])) oneshot +text=Imprint -- When Prototype Portal enters the battlefield, you may exile an artifact card from your hand. -- {X},{T}: Creatue a token that's a copy of the exiled card. X is the converted mana cost of that card. +mana={4} +type=Artifact +[/card] +[card] name=Cannibalize auto=choice name(Opponent's creatures) moveTo(exile) target(creature|opponentbattlefield) && counter(1/1,2) target(other creature|oppponentbattlefield) auto=choice name(my creatures) moveTo(exile) target(creature|mybattlefield) && counter(1/1,2) target(other creature|mybattlefield) @@ -787,11 +795,10 @@ subtype=Liliana [/card] [card] name=Frost Titan -#Not working for abilities on the field -auto=@targeted(this|mybattlefield) from(*|opponentbattlefield,opponenthand,opponentstack,opponentgraveyard,opponentexile,opponentlibrary):transforms((,newability[pay[[{2}]] name(pay 2 mana) donothing?fizzle])) forever target(*|stack) -auto=freeze target(*) -auto=@combat(attacking) source(this):freeze target(*) -text=Whenever Frost Titan becomes the target of a spell or ability an opponent controls, counter that spell or ability unless its controller pays {2}. -- Whenever Frost Titan enters the battlefield or attacks, tap target permanent. It doesn't untap during its controller's next untap step. +auto=@targeted(this) from(opponent):transforms((,newability[pay[[{2}]] name(pay 2 mana) donothing?fizzle])) oneshot +auto=frozen target(*) +auto=@combat (attacking) source(this): frozen target (*) +text=Whenever Frost Titan becomes the target of a spell or ability an opponent controls, counter that spell or ability unless its controller pays {2}. -- Whenever Frost Titan enters the battlefield or attacks, tap target permanent. It doesnt untap during its controllers next untap step. mana={4}{U}{U} type=Creature subtype=Giant @@ -808,10 +815,19 @@ mana={G}{G} type=Enchantment [/card] [card] +name=Silent Gravestone +auto=lord(*|myGraveyard) shroud +auto=lord(*|opponentGraveyard) shroud +auto={4}{T}{E}:moveTo(exile) all(*|Graveyard) && draw:1 controller +text=Cards in graveyards can't be the target of spells or abilities. -- {4},{T}: Exile Silent Gravestone and all cards from all graveyards. Draw a card. +mana={1} +type=Artifact +[/card] +[card] name=Inferno Titan auto={R}:1/0 ueot -auto=ability$!damage:1 target(creature,player)!$ controller && ability$!damage:1 target(creature,player)!$ controller && ability$!damage:1 target(creature,player)!$ controller -auto=@combat(attacking) source(this):ability$!damage:1 target(creature,player)!$ controller && ability$!damage:1 target(creature,player)!$ controller && ability$!damage:1 target(creature,player)!$ controller +auto=damage:1 target(creature,player,planeswalker) && activate damage:1 target(creature,player,planeswalker) && activate damage:1 target(creature,player,planeswalker) +auto=@combat (attacking) source(this): damage:1 target(creature,player,planeswalker) && activate damage:1 target(creature,player,planeswalker) && activate damage:1 target(creature,player,planeswalker) text={R}: Inferno Titan gets +1/+0 until end of turn. -- Whenever Inferno Titan enters the battlefield or attacks, it deals 3 damage divided as you choose among one, two, or three targets. mana={4}{R}{R} type=Creature @@ -861,7 +877,8 @@ auto=lord(*|library) devoid auto=lord(*|graveyard) devoid auto=lord(*|exile) devoid auto=lord(*|sideboard) devoid -auto=lord(*|mycastingzone) anytypeofmana +auto=lord(*|castingzone) anytypeofmana +auto=lord(*|battlefield) anytypeofmana text=All permanents are artifacts in addition to their other types. -- All cards that aren't on the battlefield, spells, and permanents are colorless. -- Players may spend mana as though it were mana of any color. mana={6} type=Artifact diff --git a/projects/mtg/bin/Res/sets/primitives/mtg.txt b/projects/mtg/bin/Res/sets/primitives/mtg.txt index faf588f6d..cb7dbbf03 100644 --- a/projects/mtg/bin/Res/sets/primitives/mtg.txt +++ b/projects/mtg/bin/Res/sets/primitives/mtg.txt @@ -49492,7 +49492,7 @@ name=Grand Architect auto=lord(other creature[blue]|myBattlefield) 1/1 auto={U}:target(creature[artifact]) becomes(blue) auto=={T(creature[blue]|mybattlefield)}:Add{2} -text=Other blue creatures you control get +1/+1. / {U}:Target artifact creature becomes blue until end of turn. / Tap an untapped blue creature you control: Add {C}{C}. Spend this mana only to cast artifact spells or activate abilities of artifacts. +text=Other blue creatures you control get +1/+1. -- {U}:Target artifact creature becomes blue until end of turn. -- Tap an untapped blue creature you control: Add {C}{C}. Spend this mana only to cast artifact spells or activate abilities of artifacts. mana={1}{U}{U} type=Creature subtype=Vedalken Artificer @@ -105714,7 +105714,7 @@ name=Silent Arbiter auto=aslongas(creature[attacking]|battlefield) lord(creature[-attacking]|battlefield) cantattack auto=aslongas(creature[attacking]|battlefield) lord(creature[-attacking]|battlefield) cantpwattack auto=aslongas(creature[blocking]|battlefield) lord(creature[-blocking]|battlefield) cantblock -text=No more than one creature can attack each combat. / No more than one creature can block each combat. +text=No more than one creature can attack each combat. -- No more than one creature can block each combat. mana={4} type=Artifact Creature subtype=Construct @@ -114003,7 +114003,7 @@ name=Stoic Rebuttal target=*|stack auto=fizzle auto=aslongas(artifact|mybattlefield) changecost(colorless:-1) >2 -text=Metalcraft -- This spell cost {1} less to cast if you control three or more artifacts. / Counter target spell. +text=Metalcraft -- This spell cost {1} less to cast if you control three or more artifacts. -- Counter target spell. mana={1}{U}{U} type=Instant [/card] diff --git a/projects/mtg/bin/Res/sets/primitives/unsupported.txt b/projects/mtg/bin/Res/sets/primitives/unsupported.txt index c5c235230..92f2cb478 100644 --- a/projects/mtg/bin/Res/sets/primitives/unsupported.txt +++ b/projects/mtg/bin/Res/sets/primitives/unsupported.txt @@ -5886,15 +5886,6 @@ power=3 toughness=3 [/card] [card] -name=Frost Titan -text=Whenever Frost Titan becomes the target of a spell or ability an opponent controls, counter that spell or ability unless its controller pays {2}. -- Whenever Frost Titan enters the battlefield or attacks, tap target permanent. It doesn't untap during its controller's next untap step. -mana={4}{U}{U} -type=Creature -subtype=Giant -power=6 -toughness=6 -[/card] -[card] name=Fruitcake Elemental text=Fruitcake Elemental is indestructible. -- At the end of your turn, Fruitcake Elemental deals 7 damage to you. -- {3}: Target player gains control of Fruitcake Elemental. mana={1}{G}{G} @@ -8121,15 +8112,6 @@ power=8 toughness=8 [/card] [card] -name=Inferno Titan -text={R}: Inferno Titan gets +1/+0 until end of turn. -- Whenever Inferno Titan enters the battlefield or attacks, it deals 3 damage divided as you choose among one, two, or three target creatures and/or players. -mana={4}{R}{R} -type=Creature -subtype=Giant -power=6 -toughness=6 -[/card] -[card] name=Inferno Trap text=If you've been dealt damage by two or more creatures this turn, you may pay {R} rather than pay Inferno Trap's mana cost. -- Inferno Trap deals 4 damage to target creature. mana={3}{R} @@ -12833,12 +12815,6 @@ power=2 toughness=5 [/card] [card] -name=Prototype Portal -text=Imprint When Prototype Portal enters the battlefield, you may exile an artifact card from your hand. -- {X}, {T}: Put a token that's a copy of the exiled card onto the battlefield. X is the converted mana cost of that card. -mana={4} -type=Artifact -[/card] -[card] name=Providence text=You may reveal this card from your opening hand. If you do, at the beginning of the first upkeep, your life total becomes 26. -- Your life total becomes 26. mana={5}{W}{W}