Added DMC token images

This commit is contained in:
PurpleCrowbar 2022-09-22 22:55:57 +01:00
parent 47670266cd
commit 2b74c85e08
26 changed files with 120 additions and 24 deletions

View file

@ -1760,6 +1760,31 @@ public class ScryfallImageSupportTokens {
put ("DMU/Saproling", "https://api.scryfall.com/cards/tdmu/18/en?format=image"); put ("DMU/Saproling", "https://api.scryfall.com/cards/tdmu/18/en?format=image");
put ("DMU/Soldier", "https://api.scryfall.com/cards/tdmu/4/en?format=image"); put ("DMU/Soldier", "https://api.scryfall.com/cards/tdmu/4/en?format=image");
// DMC
put ("DMC/Angel", "https://api.scryfall.com/cards/tdmu/1/en?format=image");
put ("DMC/Badger", "https://api.scryfall.com/cards/tdmu/15/en?format=image");
put ("DMC/Bear", "https://api.scryfall.com/cards/tdmc/7/en?format=image");
put ("DMC/Cat Warrior", "https://api.scryfall.com/cards/tdmu/17/en?format=image");
put ("DMC/Egg", "https://api.scryfall.com/cards/tdmc/8/en?format=image");
put ("DMC/Elephant", "https://api.scryfall.com/cards/tdmc/9/en?format=image");
put ("DMC/Griffin", "https://api.scryfall.com/cards/tdmc/1/en?format=image");
put ("DMC/Human", "https://api.scryfall.com/cards/tdmc/2/en?format=image");
put ("DMC/Hydra", "https://api.scryfall.com/cards/tdmc/10/en?format=image");
put ("DMC/Insect", "https://api.scryfall.com/cards/tdmu/7/en?format=image");
put ("DMC/Kavu", "https://api.scryfall.com/cards/tdmc/12/en?format=image");
put ("DMC/Knight/1", "https://api.scryfall.com/cards/tdmc/3/en?format=image");
put ("DMC/Knight/2", "https://api.scryfall.com/cards/tdmu/3/en?format=image");
put ("DMC/Kobolds of Kher Keep", "https://api.scryfall.com/cards/tdmu/13/en?format=image");
put ("DMC/Merfolk", "https://api.scryfall.com/cards/tdmu/5/en?format=image");
put ("DMC/Ragavan", "https://api.scryfall.com/cards/tdmc/6/en?format=image");
put ("DMC/Sand Warrior", "https://api.scryfall.com/cards/tdmu/20/en?format=image");
put ("DMC/Snake", "https://api.scryfall.com/cards/tdmc/11/en?format=image");
put ("DMC/Stangg Twin", "https://api.scryfall.com/cards/tdmu/21/en?format=image");
put ("DMC/Treasure", "https://api.scryfall.com/cards/tdmu/24/en?format=image");
put ("DMC/Warrior", "https://api.scryfall.com/cards/tdmc/4/en?format=image");
put ("DMC/Wurm", "https://api.scryfall.com/cards/tdmu/19/en?format=image");
put ("DMC/Zombie", "https://api.scryfall.com/cards/tdmu/9/en?format=image");
put ("DMC/Zombie Knight", "https://api.scryfall.com/cards/tdmc/5/en?format=image");
// generate supported sets // generate supported sets
supportedSets.clear(); supportedSets.clear();

View file

@ -1881,3 +1881,29 @@
|Generate|TOK:DMU|Powerstone|||PowerstoneToken| |Generate|TOK:DMU|Powerstone|||PowerstoneToken|
|Generate|TOK:DMU|Saproling|||SaprolingToken| |Generate|TOK:DMU|Saproling|||SaprolingToken|
|Generate|TOK:DMU|Soldier|||SoldierToken| |Generate|TOK:DMU|Soldier|||SoldierToken|
# DMC
|Generate|TOK:DMC|Angel|||AngelVigilanceToken|
|Generate|TOK:DMC|Badger|||BadgerToken|
|Generate|TOK:DMC|Bear|||BearToken|
|Generate|TOK:DMC|Cat Warrior|||CatWarriorToken|
|Generate|TOK:DMC|Egg|||AtlaPalaniToken|
|Generate|TOK:DMC|Elephant|||ElephantToken|
|Generate|TOK:DMC|Griffin|||GriffinToken|
|Generate|TOK:DMC|Human|||HumanToken|
|Generate|TOK:DMC|Hydra|||ZaxaraTheExemplaryHydraToken|
|Generate|TOK:DMC|Insect|||XiraBlackInsectToken|
|Generate|TOK:DMC|Kavu|||KavuAllColorToken|
|Generate|TOK:DMC|Knight|1||KnightToken|
|Generate|TOK:DMC|Knight|2||RasputinKnightToken|
|Generate|TOK:DMC|Kobolds of Kher Keep|||KherKeepKoboldToken|
|Generate|TOK:DMC|Merfolk|||MerfolkToken|
|Generate|TOK:DMC|Ragavan|||RagavanToken|
|Generate|TOK:DMC|Sand Warrior|||HazezonTamarSandWarriorToken|
|Generate|TOK:DMC|Snake|||SnakeToken|
|Generate|TOK:DMC|Stangg Twin|||StanggTwinToken|
|Generate|TOK:DMC|Treasure|||TreasureToken|
|Generate|TOK:DMC|Warrior|||WarriorVigilantToken|
|Generate|TOK:DMC|Wurm|||Wurm44Token|
|Generate|TOK:DMC|Zombie|||ZombieToken|
|Generate|TOK:DMC|Zombie Knight|||ZombieKnightToken|

View file

@ -12,7 +12,6 @@ import mage.cards.CardImpl;
import mage.cards.CardSetInfo; import mage.cards.CardSetInfo;
import mage.constants.CardType; import mage.constants.CardType;
import mage.filter.common.FilterControlledPermanent; import mage.filter.common.FilterControlledPermanent;
import mage.game.permanent.token.GoblinRogueToken;
import mage.game.permanent.token.GriffinToken; import mage.game.permanent.token.GriffinToken;
/** /**

View file

@ -20,7 +20,7 @@ public final class AngelVigilanceToken extends TokenImpl {
addAbility(FlyingAbility.getInstance()); addAbility(FlyingAbility.getInstance());
addAbility(VigilanceAbility.getInstance()); addAbility(VigilanceAbility.getInstance());
availableImageSetCodes = Arrays.asList("NEC", "MH1", "WAR", "GRN", "M19", "2X2"); availableImageSetCodes = Arrays.asList("NEC", "MH1", "WAR", "GRN", "M19", "2X2", "DMC");
} }
public AngelVigilanceToken(final AngelVigilanceToken token) { public AngelVigilanceToken(final AngelVigilanceToken token) {

View file

@ -21,7 +21,7 @@ public final class AtlaPalaniToken extends TokenImpl {
toughness = new MageInt(1); toughness = new MageInt(1);
addAbility(DefenderAbility.getInstance()); addAbility(DefenderAbility.getInstance());
availableImageSetCodes = Arrays.asList("C19","2X2"); availableImageSetCodes = Arrays.asList("C19", "2X2", "DMC");
} }
private AtlaPalaniToken(final AtlaPalaniToken token) { private AtlaPalaniToken(final AtlaPalaniToken token) {

View file

@ -19,7 +19,7 @@ public final class BearToken extends TokenImpl {
power = new MageInt(2); power = new MageInt(2);
toughness = new MageInt(2); toughness = new MageInt(2);
availableImageSetCodes = Arrays.asList("C15", "JUD", "ODY", "VMA", "MH1", "ELD", "KHM"); availableImageSetCodes = Arrays.asList("C15", "JUD", "ODY", "VMA", "MH1", "ELD", "KHM", "DMC");
} }
public BearToken(final BearToken token) { public BearToken(final BearToken token) {

View file

@ -19,7 +19,7 @@ public final class CatWarriorToken extends TokenImpl {
static final private List<String> tokenImageSets = new ArrayList<>(); static final private List<String> tokenImageSets = new ArrayList<>();
static { static {
tokenImageSets.addAll(Arrays.asList("C17", "C18")); tokenImageSets.addAll(Arrays.asList("C17", "C18", "DMC"));
} }
public CatWarriorToken() { public CatWarriorToken() {

View file

@ -20,7 +20,7 @@ public final class ElephantToken extends TokenImpl {
toughness = new MageInt(3); toughness = new MageInt(3);
availableImageSetCodes = Arrays.asList("C14", "C15", "CMA", "CNS", "GVL", "DDD", availableImageSetCodes = Arrays.asList("C14", "C15", "CMA", "CNS", "GVL", "DDD",
"EMA", "INV", "JUD", "MM2", "ODY", "VMA", "WWK", "MH1", "CMR", "C21", "MIC", "NEC", "2XM", "NCC", "MM3", "DDS"); "EMA", "INV", "JUD", "MM2", "ODY", "VMA", "WWK", "MH1", "CMR", "C21", "MIC", "NEC", "2XM", "NCC", "MM3", "DDS", "DMC");
} }
public ElephantToken(final ElephantToken token) { public ElephantToken(final ElephantToken token) {

View file

@ -23,7 +23,7 @@ public final class GriffinToken extends TokenImpl {
// Flying // Flying
this.addAbility(FlyingAbility.getInstance()); this.addAbility(FlyingAbility.getInstance());
availableImageSetCodes = Arrays.asList("DDH", "DDL", "M21", "TSR"); availableImageSetCodes = Arrays.asList("DDH", "DDL", "M21", "TSR", "DMC");
} }
public GriffinToken(final GriffinToken token) { public GriffinToken(final GriffinToken token) {

View file

@ -21,6 +21,7 @@ public final class HazezonTamarSandWarriorToken extends TokenImpl {
subtype.add(SubType.WARRIOR); subtype.add(SubType.WARRIOR);
power = new MageInt(1); power = new MageInt(1);
toughness = new MageInt(1); toughness = new MageInt(1);
setOriginalExpansionSetCode("DMC");
} }
public HazezonTamarSandWarriorToken(final HazezonTamarSandWarriorToken token) { public HazezonTamarSandWarriorToken(final HazezonTamarSandWarriorToken token) {

View file

@ -19,7 +19,7 @@ public final class HumanToken extends TokenImpl {
power = new MageInt(1); power = new MageInt(1);
toughness = new MageInt(1); toughness = new MageInt(1);
availableImageSetCodes.addAll(Arrays.asList("DKA", "AVR", "FNMP", "RNA", "ELD", "C19", "C20", "MID", "VOW", "NCC", "DDQ", "CLB")); availableImageSetCodes.addAll(Arrays.asList("DKA", "AVR", "FNMP", "RNA", "ELD", "C19", "C20", "MID", "VOW", "NCC", "DDQ", "CLB", "DMC"));
} }
public HumanToken(final HumanToken token) { public HumanToken(final HumanToken token) {

View file

@ -24,8 +24,8 @@ public final class KavuAllColorToken extends TokenImpl {
color.setGreen(true); color.setGreen(true);
power = new MageInt(3); power = new MageInt(3);
toughness = new MageInt(3); toughness = new MageInt(3);
this.addAbility(TrampleAbility.getInstance());
this.addAbility(new SimpleStaticAbility(Zone.ALL, new InfoEffect("This creature is all colors"))); this.addAbility(new SimpleStaticAbility(Zone.ALL, new InfoEffect("This creature is all colors")));
this.addAbility(TrampleAbility.getInstance());
setOriginalExpansionSetCode("DMC"); setOriginalExpansionSetCode("DMC");
} }

View file

@ -21,7 +21,7 @@ public final class KherKeepKoboldToken extends TokenImpl {
power = new MageInt(0); power = new MageInt(0);
toughness = new MageInt(1); toughness = new MageInt(1);
availableImageSetCodes = Arrays.asList("A25", "TSR", "CLB"); availableImageSetCodes = Arrays.asList("A25", "TSR", "CLB", "DMC");
} }
public KherKeepKoboldToken(final KherKeepKoboldToken token) { public KherKeepKoboldToken(final KherKeepKoboldToken token) {
super(token); super(token);

View file

@ -23,7 +23,7 @@ public final class KnightToken extends TokenImpl {
toughness = new MageInt(2); toughness = new MageInt(2);
this.addAbility(VigilanceAbility.getInstance()); this.addAbility(VigilanceAbility.getInstance());
availableImageSetCodes = Arrays.asList("C15", "CMA", "ORI", "RTR", "M19", "ELD", "M21", "AFC", "MIC", "DOM", "2X2"); availableImageSetCodes = Arrays.asList("C15", "CMA", "ORI", "RTR", "M19", "ELD", "M21", "AFC", "MIC", "DOM", "2X2", "DMC");
} }
public KnightToken(final KnightToken token) { public KnightToken(final KnightToken token) {
@ -45,5 +45,9 @@ public final class KnightToken extends TokenImpl {
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("DOM")) { if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("DOM")) {
setTokenType(RandomUtil.nextInt(2) + 1); setTokenType(RandomUtil.nextInt(2) + 1);
} }
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("DMC")) {
setTokenType(1);
}
} }
} }

View file

@ -21,7 +21,7 @@ public final class MerfolkToken extends TokenImpl {
power = new MageInt(1); power = new MageInt(1);
toughness = new MageInt(1); toughness = new MageInt(1);
availableImageSetCodes = Arrays.asList("ZEN"); availableImageSetCodes = Arrays.asList("ZEN", "DMC");
} }
public MerfolkToken(final MerfolkToken token) { public MerfolkToken(final MerfolkToken token) {

View file

@ -6,6 +6,8 @@ import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.constants.SuperType; import mage.constants.SuperType;
import java.util.Arrays;
/** /**
* *
* @author spjspj * @author spjspj
@ -14,13 +16,14 @@ public final class RagavanToken extends TokenImpl {
public RagavanToken() { public RagavanToken() {
super("Ragavan", "Ragavan, a legendary 2/1 red Monkey creature token"); super("Ragavan", "Ragavan, a legendary 2/1 red Monkey creature token");
this.setOriginalExpansionSetCode("AER");
this.supertype.add(SuperType.LEGENDARY); this.supertype.add(SuperType.LEGENDARY);
this.power = new MageInt(2); this.power = new MageInt(2);
this.toughness = new MageInt(1); this.toughness = new MageInt(1);
this.color.setRed(true); this.color.setRed(true);
this.subtype.add(SubType.MONKEY); this.subtype.add(SubType.MONKEY);
this.cardType.add(CardType.CREATURE); this.cardType.add(CardType.CREATURE);
availableImageSetCodes = Arrays.asList("AER", "DMC");
} }
public RagavanToken(final RagavanToken token) { public RagavanToken(final RagavanToken token) {

View file

@ -29,4 +29,13 @@ public final class RasputinKnightToken extends TokenImpl {
public RasputinKnightToken copy() { public RasputinKnightToken copy() {
return new RasputinKnightToken(this); return new RasputinKnightToken(this);
} }
@Override
public void setExpansionSetCodeForImage(String code) {
super.setExpansionSetCodeForImage(code);
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("DMC")) {
setTokenType(2);
}
}
} }

View file

@ -20,7 +20,7 @@ public final class SnakeToken extends TokenImpl {
toughness = new MageInt(1); toughness = new MageInt(1);
availableImageSetCodes = Arrays.asList("6ED", "C15", "C19", "CHK", "KTK", "MM2", "MMQ", "SOK", availableImageSetCodes = Arrays.asList("6ED", "C15", "C19", "CHK", "KTK", "MM2", "MMQ", "SOK",
"VIS", "ZEN", "C20", "MIC"); "VIS", "ZEN", "C20", "MIC", "DMC");
} }
public SnakeToken(final SnakeToken token) { public SnakeToken(final SnakeToken token) {

View file

@ -26,7 +26,7 @@ public final class StanggTwinToken extends TokenImpl {
this.power = new MageInt(3); this.power = new MageInt(3);
this.toughness = new MageInt(4); this.toughness = new MageInt(4);
availableImageSetCodes = Arrays.asList("A25"); availableImageSetCodes = Arrays.asList("A25", "DMC");
} }
public StanggTwinToken(final StanggTwinToken token) { public StanggTwinToken(final StanggTwinToken token) {

View file

@ -27,7 +27,10 @@ public final class TreasureToken extends TokenImpl {
ability.addCost(new SacrificeSourceCost()); ability.addCost(new SacrificeSourceCost());
this.addAbility(ability); this.addAbility(ability);
availableImageSetCodes = Arrays.asList("XLN", "RNA", "M20", "C19", "C20", "M21", "CMR", "KHM", "STX", "MH2", "AFR", "VOW", "NEO", "SLD", "2XM", "SNC", "CLB", "2X2"); availableImageSetCodes = Arrays.asList("XLN", "RNA", "M20", "C19", "C20",
"M21", "CMR", "KHM", "STX", "MH2",
"AFR", "VOW", "NEO", "SLD", "2XM",
"SNC", "CLB", "2X2", "DMC");
} }
public TreasureToken(final TreasureToken token) { public TreasureToken(final TreasureToken token) {

View file

@ -23,7 +23,7 @@ public final class WarriorVigilantToken extends TokenImpl {
power = new MageInt(1); power = new MageInt(1);
toughness = new MageInt(1); toughness = new MageInt(1);
addAbility(VigilanceAbility.getInstance()); addAbility(VigilanceAbility.getInstance());
availableImageSetCodes.addAll(Arrays.asList("AKH")); availableImageSetCodes.addAll(Arrays.asList("AKH", "DMC"));
} }
public WarriorVigilantToken(final WarriorVigilantToken token) { public WarriorVigilantToken(final WarriorVigilantToken token) {

View file

@ -18,8 +18,7 @@ public final class Wurm44Token extends TokenImpl {
subtype.add(SubType.WURM); subtype.add(SubType.WURM);
power = new MageInt(4); power = new MageInt(4);
toughness = new MageInt(4); toughness = new MageInt(4);
setOriginalExpansionSetCode("DMC");
availableImageSetCodes = Arrays.asList("DMU");
} }
public Wurm44Token(final Wurm44Token token) { public Wurm44Token(final Wurm44Token token) {

View file

@ -0,0 +1,28 @@
package mage.game.permanent.token;
import mage.MageInt;
import mage.abilities.keyword.FlyingAbility;
import mage.constants.CardType;
import mage.constants.SubType;
public final class XiraBlackInsectToken extends TokenImpl {
public XiraBlackInsectToken() {
super("Insect Token", "1/1 black Insect creature token with flying");
cardType.add(CardType.CREATURE);
color.setBlack(true);
subtype.add(SubType.INSECT);
power = new MageInt(1);
toughness = new MageInt(1);
this.addAbility(FlyingAbility.getInstance());
setOriginalExpansionSetCode("DMC");
}
public XiraBlackInsectToken(final XiraBlackInsectToken token) {
super(token);
}
public XiraBlackInsectToken copy() {
return new XiraBlackInsectToken(this);
}
}

View file

@ -19,7 +19,7 @@ public class ZaxaraTheExemplaryHydraToken extends TokenImpl {
power = new MageInt(0); power = new MageInt(0);
toughness = new MageInt(0); toughness = new MageInt(0);
availableImageSetCodes = Arrays.asList("C20"); availableImageSetCodes = Arrays.asList("C20", "DMC");
} }
private ZaxaraTheExemplaryHydraToken(final ZaxaraTheExemplaryHydraToken token) { private ZaxaraTheExemplaryHydraToken(final ZaxaraTheExemplaryHydraToken token) {

View file

@ -13,13 +13,12 @@ public final class ZombieKnightToken extends TokenImpl {
static final private List<String> tokenImageSets = new ArrayList<>(); static final private List<String> tokenImageSets = new ArrayList<>();
static { static {
tokenImageSets.addAll(Arrays.asList("DOM")); tokenImageSets.addAll(Arrays.asList("DOM", "DMC"));
} }
public ZombieKnightToken(){ public ZombieKnightToken(){
super("Zombie Knight Token", "a 2/2 black Zombie Knight creature token with menace"); super("Zombie Knight Token", "a 2/2 black Zombie Knight creature token with menace");
availableImageSetCodes = tokenImageSets; availableImageSetCodes = tokenImageSets;
setOriginalExpansionSetCode("DOM");
color.setBlack(true); color.setBlack(true);
cardType.add(CardType.CREATURE); cardType.add(CardType.CREATURE);
subtype.add(SubType.ZOMBIE, SubType.KNIGHT); subtype.add(SubType.ZOMBIE, SubType.KNIGHT);

View file

@ -33,7 +33,7 @@ public final class ZombieToken extends TokenImpl {
"MIC", "VOW", "UMA", "NCC", "MIC", "VOW", "UMA", "NCC",
"MED", "BBD", "M19", "CM2", "MED", "BBD", "M19", "CM2",
"PCA", "AVR", "DDQ", "CN2", "PCA", "AVR", "DDQ", "CN2",
"2X2", "CC2"); "2X2", "CC2", "DMC");
} }
@Override @Override