Added new set: Explorers of Ixalan (47 cards, 1 token)

This commit is contained in:
Oleg Agafonov 2017-12-22 09:18:41 +04:00
parent 43c732c751
commit 39ca5a13f4
9 changed files with 97 additions and 26 deletions

View file

@ -199,12 +199,12 @@ public enum MagicCardsImageSource implements CardImageSource {
add("E01");
add("HOU");
add("C17");
// add("XLN");
// add("DDT");
// add("IMA");
// add("E02");
// add("V17");
// add("UST");
add("XLN");
add("DDT");
add("IMA");
add("E02");
add("V17");
add("UST");
// add("RIX");
// add("A25");
// add("DOM");

View file

@ -228,11 +228,11 @@ public enum MagidexImageSource implements CardImageSource {
supportedSets.add("E01");
supportedSets.add("HOU");
supportedSets.add("C17");
// supportedSets.add("XLN");
// supportedSets.add("DDT");
// supportedSets.add("IMA");
// supportedSets.add("E02");
// supportedSets.add("V17");
supportedSets.add("XLN");
supportedSets.add("DDT");
supportedSets.add("IMA");
supportedSets.add("E02");
supportedSets.add("V17");
// supportedSets.add("UST");
// supportedSets.add("RIX");
// supportedSets.add("A25");

View file

@ -200,10 +200,10 @@ public enum ScryfallImageSource implements CardImageSource {
supportedSets.add("HOU");
supportedSets.add("C17");
supportedSets.add("XLN");
// supportedSets.add("DDT");
supportedSets.add("DDT");
supportedSets.add("IMA");
// supportedSets.add("E02");
// supportedSets.add("V17");
supportedSets.add("E02");
supportedSets.add("V17");
supportedSets.add("UST");
supportedSets.add("RIX");
supportedSets.add("WMCQ");

View file

@ -258,10 +258,10 @@ public enum WizardCardsImageSource implements CardImageSource {
supportedSets.add("HOU");
supportedSets.add("C17");
supportedSets.add("XLN");
// supportedSets.add("DDT"); // Duel Decks: Merfolk vs. Goblins
// supportedSets.add("IMA"); // Iconic Msters
// supportedSets.add("E02"); // Explorers of Ixalan
// supportedSets.add("V17"); // From the Vault: Transform
supportedSets.add("DDT"); // Duel Decks: Merfolk vs. Goblins
supportedSets.add("IMA"); // Iconic Msters
supportedSets.add("E02"); // Explorers of Ixalan
supportedSets.add("V17"); // From the Vault: Transform
// supportedSets.add("UST"); // Unstable
// supportedSets.add("RIX"); // Rivals of Ixalan
// supportedSets.add("A25"); // Masters 25

View file

@ -352,6 +352,8 @@ public class DownloadPictures extends DefaultBoundedRangeModel implements Runnab
if (cardImageSource.isTokenSource() && cardImageSource.isImageProvided(data.getSet(), data.getName())) {
numberTokenImagesAvailable++;
cardsToDownload.add(data);
}else{
//logger.warn("Source do not support token (set " + data.getSet() + ", token " + data.getName() + ")");
}
} else {
if (selectedSetCodes != null && selectedSetCodes.contains(data.getSet())) {
@ -838,7 +840,7 @@ public class DownloadPictures extends DefaultBoundedRangeModel implements Runnab
// download ERROR
logger.warn("Image download for " + card.getName()
+ (!card.getDownloadName().equals(card.getName()) ? " downloadname: " + card.getDownloadName() : "")
+ '(' + card.getSet() + ") failed - responseCode: " + responseCode + " url: " + url.toString()
+ " (" + card.getSet() + ") failed - responseCode: " + responseCode + " url: " + url.toString()
);
if (logger.isDebugEnabled()) {

View file

@ -501,6 +501,7 @@
|Generate|TOK:E01|Soldier|||SoldierToken|
|Generate|TOK:E01|Spirit|||SpiritWhiteToken|
|Generate|TOK:E01|Zombie|||ZombieToken|
|Generate|TOK:E02|Saproling|||SaprolingToken|
|Generate|TOK:EMA|Assembly-Worker|||AssemblyWorkerToken|
|Generate|TOK:EMA|Beast|||CarnivoreToken|
|Generate|TOK:EMA|Carnivore||

View file

@ -73,6 +73,6 @@ dd3evg=ddaevg
dd3gvl=ddagvl
dd3jvc=ddajvc
# Remove setname as soon as the images can be downloaded
ignore.urls=TOK,DDT,V17,E02,M19,M25,DOM,H17
ignore.urls=TOK,M19,M25,DOM,H17
# sets ordered by release time (newest goes first)
token.lookup.order=M19,M25,DOM,E02,RIX,UST,XLN,IMA,H17,C17,V17,E01,DDT,CMA,HOU,MM3,DDS,AKH,DD3DVD,DD3EVG,DD3GVL,DD3JVC,H09,AER,PCA,C16,V16,MPS,KLD,DDR,CN2,EMN,EMA,SOI,DDQ,CP,CMA,ARENA,SUS,APAC,EURO,UGIN,C15,OGW,EXP,DDP,BFZ,DRB,V09,V10,V11,V12,V13,V14,V15,TPR,MPRP,DD3,DDO,ORI,MM2,PTC,DTK,FRF,KTK,M15,VMA,CNS,JOU,BNG,THS,DDL,M14,MMA,DGM,GTC,RTR,M13,AVR,DDI,DKA,ISD,M12,NPH,MBS,SOM,M11,ROE,DDE,WWK,ZEN,M10,GVL,ARB,DVD,CFX,JVC,ALA,EVE,SHM,EVG,MOR,LRW,10E,CLS,CHK,GRC

View file

@ -28,11 +28,12 @@
package mage.sets;
import mage.cards.ExpansionSet;
import mage.constants.Rarity;
import mage.constants.SetType;
/**
*
* @author fireshoes
* @author JayDi85
*/
public class ExplorersOfIxalan extends ExpansionSet {
@ -43,7 +44,55 @@ public class ExplorersOfIxalan extends ExpansionSet {
}
private ExplorersOfIxalan() {
super("Explorers of Ixalan", "E02", ExpansionSet.buildDate(2017, 1, 24), SetType.SUPPLEMENTAL);
super("Explorers of Ixalan", "E02", ExpansionSet.buildDate(2017, 11, 24), SetType.SUPPLEMENTAL);
this.blockName = "Explorers of Ixalan";
cards.add(new SetCardInfo("Adaptive Automaton", 42, Rarity.RARE, mage.cards.a.AdaptiveAutomaton.class));
cards.add(new SetCardInfo("Aether Gale", 7, Rarity.RARE, mage.cards.a.AetherGale.class));
cards.add(new SetCardInfo("Aggravated Assault", 25, Rarity.RARE, mage.cards.a.AggravatedAssault.class));
cards.add(new SetCardInfo("Beacon of Immortality", 1, Rarity.RARE, mage.cards.b.BeaconOfImmortality.class));
cards.add(new SetCardInfo("Blatant Thievery", 8, Rarity.RARE, mage.cards.b.BlatantThievery.class));
cards.add(new SetCardInfo("Bloodbond Vampire", 15, Rarity.UNCOMMON, mage.cards.b.BloodbondVampire.class));
cards.add(new SetCardInfo("Borderland Ranger", 31, Rarity.COMMON, mage.cards.b.BorderlandRanger.class));
cards.add(new SetCardInfo("Child of Night", 16, Rarity.COMMON, mage.cards.c.ChildOfNight.class));
cards.add(new SetCardInfo("Coat with Venom", 17, Rarity.COMMON, mage.cards.c.CoatWithVenom.class));
cards.add(new SetCardInfo("Concentrate", 9, Rarity.UNCOMMON, mage.cards.c.Concentrate.class));
cards.add(new SetCardInfo("Crumbling Necropolis", 45, Rarity.UNCOMMON, mage.cards.c.CrumblingNecropolis.class));
cards.add(new SetCardInfo("Day of Judgment", 2, Rarity.RARE, mage.cards.d.DayOfJudgment.class));
cards.add(new SetCardInfo("Disaster Radius", 26, Rarity.RARE, mage.cards.d.DisasterRadius.class));
cards.add(new SetCardInfo("Doom Blade", 18, Rarity.UNCOMMON, mage.cards.d.DoomBlade.class));
cards.add(new SetCardInfo("Giant Growth", 32, Rarity.COMMON, mage.cards.g.GiantGrowth.class));
cards.add(new SetCardInfo("Hunter's Prowess", 33, Rarity.RARE, mage.cards.h.HuntersProwess.class));
cards.add(new SetCardInfo("Innocent Blood", 19, Rarity.COMMON, mage.cards.i.InnocentBlood.class));
cards.add(new SetCardInfo("Jungle Barrier", 38, Rarity.UNCOMMON, mage.cards.j.JungleBarrier.class));
cards.add(new SetCardInfo("Jungle Shrine", 46, Rarity.UNCOMMON, mage.cards.j.JungleShrine.class));
cards.add(new SetCardInfo("Lightning Helix", 39, Rarity.UNCOMMON, mage.cards.l.LightningHelix.class));
cards.add(new SetCardInfo("Mass Mutiny", 27, Rarity.RARE, mage.cards.m.MassMutiny.class));
cards.add(new SetCardInfo("Merfolk Sovereign", 10, Rarity.RARE, mage.cards.m.MerfolkSovereign.class));
cards.add(new SetCardInfo("Mortify", 40, Rarity.UNCOMMON, mage.cards.m.Mortify.class));
cards.add(new SetCardInfo("Necropolis Regent", 20, Rarity.MYTHIC, mage.cards.n.NecropolisRegent.class));
cards.add(new SetCardInfo("Path to Exile", 3, Rarity.UNCOMMON, mage.cards.p.PathToExile.class));
cards.add(new SetCardInfo("Prey Upon", 34, Rarity.COMMON, mage.cards.p.PreyUpon.class));
cards.add(new SetCardInfo("Prismatic Lens", 43, Rarity.UNCOMMON, mage.cards.p.PrismaticLens.class));
cards.add(new SetCardInfo("Quicksilver Amulet", 44, Rarity.RARE, mage.cards.q.QuicksilverAmulet.class));
cards.add(new SetCardInfo("Rancor", 35, Rarity.UNCOMMON, mage.cards.r.Rancor.class));
cards.add(new SetCardInfo("Rush of Adrenaline", 28, Rarity.COMMON, mage.cards.r.RushOfAdrenaline.class));
cards.add(new SetCardInfo("Shared Animosity", 29, Rarity.RARE, mage.cards.s.SharedAnimosity.class));
cards.add(new SetCardInfo("Shielded by Faith", 4, Rarity.RARE, mage.cards.s.ShieldedByFaith.class));
cards.add(new SetCardInfo("Soul of the Harvest", 36, Rarity.RARE, mage.cards.s.SoulOfTheHarvest.class));
cards.add(new SetCardInfo("Tainted Field", 47, Rarity.UNCOMMON, mage.cards.t.TaintedField.class));
cards.add(new SetCardInfo("Threads of Disloyalty", 11, Rarity.RARE, mage.cards.t.ThreadsOfDisloyalty.class));
cards.add(new SetCardInfo("Time Warp", 12, Rarity.MYTHIC, mage.cards.t.TimeWarp.class));
cards.add(new SetCardInfo("Unsummon", 13, Rarity.COMMON, mage.cards.u.Unsummon.class));
cards.add(new SetCardInfo("Urge to Feed", 21, Rarity.UNCOMMON, mage.cards.u.UrgeToFeed.class));
cards.add(new SetCardInfo("Vampire Interloper", 22, Rarity.COMMON, mage.cards.v.VampireInterloper.class));
cards.add(new SetCardInfo("Vampire Nighthawk", 23, Rarity.UNCOMMON, mage.cards.v.VampireNighthawk.class));
cards.add(new SetCardInfo("Vampire Noble", 24, Rarity.COMMON, mage.cards.v.VampireNoble.class));
cards.add(new SetCardInfo("Veteran's Reflexes", 5, Rarity.COMMON, mage.cards.v.VeteransReflexes.class));
cards.add(new SetCardInfo("Vow of Duty", 6, Rarity.UNCOMMON, mage.cards.v.VowOfDuty.class));
cards.add(new SetCardInfo("Vow of Flight", 14, Rarity.UNCOMMON, mage.cards.v.VowOfFlight.class));
cards.add(new SetCardInfo("Vow of Lightning", 30, Rarity.UNCOMMON, mage.cards.v.VowOfLightning.class));
cards.add(new SetCardInfo("Vow of Wildness", 37, Rarity.UNCOMMON, mage.cards.v.VowOfWildness.class));
cards.add(new SetCardInfo("Zealous Persecution", 41, Rarity.UNCOMMON, mage.cards.z.ZealousPersecution.class));
}
}

View file

@ -44,9 +44,28 @@ public class SaprolingToken extends Token {
final static private List<String> tokenImageSets = new ArrayList<>();
/* do not used, but why it was added?
static {
tokenImageSets.addAll(Arrays.asList("10E", "ALA", "DDE", "DDH", "DDJ", "M12", "M13", "M14", "MM2", "MMA", "RTR", "C15", "MM3", "C16", "CMA"));
}
tokenImageSets.addAll(Arrays.asList(
"10E",
"ALA",
"DDE",
"DDH",
"DDJ",
"M12",
"M13",
"M14",
"MM2",
"MM3",
"MMA",
"RTR",
"C15",
"MM3",
"C16", // 2 different token images...
"CMA",
"VMA", // 2 different token, one with DIFFERENT stats, "Saproling Burst" create different token, see https://scryfall.com/card/tvma/12
"E02"));
}*/
public SaprolingToken() {
this(null, 0);
@ -58,7 +77,7 @@ public class SaprolingToken extends Token {
public SaprolingToken(String setCode, int tokenType) {
super("Saproling", "1/1 green Saproling creature token");
availableImageSetCodes = tokenImageSets;
//availableImageSetCodes = tokenImageSets;
setOriginalExpansionSetCode(setCode);
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("C16")) {
this.setTokenType(RandomUtil.nextInt(2) + 1);