Added CLB token images

This commit is contained in:
PurpleCrowbar 2022-06-06 19:57:01 +01:00
parent 7e523e655a
commit 901bb80885
43 changed files with 180 additions and 52 deletions

View file

@ -1652,6 +1652,56 @@ public class ScryfallImageSupportTokens {
put ("GN2/Dragon/1", "https://api.scryfall.com/cards/tgn2/1/en?format=image"); put ("GN2/Dragon/1", "https://api.scryfall.com/cards/tgn2/1/en?format=image");
put ("GN2/Dragon/2", "https://api.scryfall.com/cards/tgn2/2/en?format=image"); put ("GN2/Dragon/2", "https://api.scryfall.com/cards/tgn2/2/en?format=image");
// CLB
put ("CLB/Angel Warrior", "https://api.scryfall.com/cards/tclb/25/en?format=image");
put ("CLB/Beast", "https://api.scryfall.com/cards/tclb/38/en?format=image");
put ("CLB/Boar", "https://api.scryfall.com/cards/tclb/12/en?format=image");
put ("CLB/Boo", "https://api.scryfall.com/cards/tclb/9/en?format=image");
put ("CLB/Centaur", "https://api.scryfall.com/cards/tclb/39/en?format=image");
put ("CLB/Clue", "https://api.scryfall.com/cards/tclb/47/en?format=image");
put ("CLB/Construct", "https://api.scryfall.com/cards/tclb/16/en?format=image");
put ("CLB/Demon", "https://api.scryfall.com/cards/tclb/7/en?format=image");
put ("CLB/Devil", "https://api.scryfall.com/cards/tclb/10/en?format=image");
put ("CLB/Dragon/1", "https://api.scryfall.com/cards/tclb/11/en?format=image");
put ("CLB/Dragon/2", "https://api.scryfall.com/cards/tclb/33/en?format=image");
put ("CLB/Eldrazi Horror", "https://api.scryfall.com/cards/tclb/21/en?format=image");
put ("CLB/Faerie Dragon", "https://api.scryfall.com/cards/tclb/6/en?format=image");
put ("CLB/Goat", "https://api.scryfall.com/cards/tclb/1/en?format=image");
put ("CLB/Goblin", "https://api.scryfall.com/cards/tclb/34/en?format=image");
put ("CLB/Gold", "https://api.scryfall.com/cards/tclb/48/en?format=image");
put ("CLB/Horror", "https://api.scryfall.com/cards/tclb/31/en?format=image");
put ("CLB/Human", "https://api.scryfall.com/cards/tclb/26/en?format=image");
put ("CLB/Inkling", "https://api.scryfall.com/cards/tclb/45/en?format=image");
put ("CLB/Insect", "https://api.scryfall.com/cards/tclb/40/en?format=image");
put ("CLB/Knight", "https://api.scryfall.com/cards/tclb/2/en?format=image");
put ("CLB/Kobolds of Kher Keep", "https://api.scryfall.com/cards/tclb/35/en?format=image");
put ("CLB/Kor Warrior", "https://api.scryfall.com/cards/tclb/27/en?format=image");
put ("CLB/Ogre", "https://api.scryfall.com/cards/tclb/36/en?format=image");
put ("CLB/Ox", "https://api.scryfall.com/cards/tclb/13/en?format=image");
put ("CLB/Pegasus", "https://api.scryfall.com/cards/tclb/3/en?format=image");
put ("CLB/Phyrexian Beast", "https://api.scryfall.com/cards/tclb/41/en?format=image");
put ("CLB/Pirate", "https://api.scryfall.com/cards/tclb/37/en?format=image");
put ("CLB/Rabbit", "https://api.scryfall.com/cards/tclb/4/en?format=image");
put ("CLB/Emblem Rowan Kenrith", "https://api.scryfall.com/cards/tclb/49/en?format=image");
put ("CLB/Saproling", "https://api.scryfall.com/cards/tclb/14/en?format=image");
put ("CLB/Satyr", "https://api.scryfall.com/cards/tclb/46/en?format=image");
put ("CLB/Shapeshifter/1", "https://api.scryfall.com/cards/tclb/22/en?format=image");
put ("CLB/Shapeshifter/2", "https://api.scryfall.com/cards/tclb/23/en?format=image");
put ("CLB/Shapeshifter/3", "https://api.scryfall.com/cards/tclb/24/en?format=image");
put ("CLB/Shapeshifter/4", "https://api.scryfall.com/cards/tclb/28/en?format=image");
put ("CLB/Skeleton", "https://api.scryfall.com/cards/tclb/8/en?format=image");
put ("CLB/Soldier", "https://api.scryfall.com/cards/tclb/5/en?format=image");
put ("CLB/Spider", "https://api.scryfall.com/cards/tclb/42/en?format=image");
put ("CLB/Squid", "https://api.scryfall.com/cards/tclb/29/en?format=image");
put ("CLB/Squirrel", "https://api.scryfall.com/cards/tclb/15/en?format=image");
put ("CLB/Treasure", "https://api.scryfall.com/cards/tclb/17/en?format=image");
put ("CLB/Volo's Journal", "https://api.scryfall.com/cards/tclb/18/en?format=image");
put ("CLB/Warrior", "https://api.scryfall.com/cards/tclb/32/en?format=image");
put ("CLB/Emblem Will Kenrith", "https://api.scryfall.com/cards/tclb/50/en?format=image");
put ("CLB/Wizard", "https://api.scryfall.com/cards/tclb/30/en?format=image");
put ("CLB/Wolf", "https://api.scryfall.com/cards/tclb/43/en?format=image");
put ("CLB/Wurm", "https://api.scryfall.com/cards/tclb/44/en?format=image");
// generate supported sets // generate supported sets
supportedSets.clear(); supportedSets.clear();
for (String cardName : this.keySet()) { for (String cardName : this.keySet()) {

View file

@ -84,6 +84,8 @@
|Generate|EMBLEM!:MED|Emblem Vraska|||VraskaGolgariQueenEmblem| |Generate|EMBLEM!:MED|Emblem Vraska|||VraskaGolgariQueenEmblem|
|Generate|EMBLEM!:BBD|Emblem Rowan Kenrith|||RowanKenrithEmblem| |Generate|EMBLEM!:BBD|Emblem Rowan Kenrith|||RowanKenrithEmblem|
|Generate|EMBLEM!:BBD|Emblem Will Kenrith|||WillKenrithEmblem| |Generate|EMBLEM!:BBD|Emblem Will Kenrith|||WillKenrithEmblem|
|Generate|EMBLEM!:CLB|Emblem Rowan Kenrith|||RowanKenrithEmblem|
|Generate|EMBLEM!:CLB|Emblem Will Kenrith|||WillKenrithEmblem|
|Generate|EMBLEM:THS|Elspeth, Sun's Champion||Emblem Elspeth|ElspethSunsChampionEmblem| |Generate|EMBLEM:THS|Elspeth, Sun's Champion||Emblem Elspeth|ElspethSunsChampionEmblem|
|Generate|EMBLEM:AVR|Tamiyo, the Moon Sage||Emblem Tamiyo|TamiyoTheMoonSageEmblem| |Generate|EMBLEM:AVR|Tamiyo, the Moon Sage||Emblem Tamiyo|TamiyoTheMoonSageEmblem|
|Generate|EMBLEM:BNG|Kiora, the Crashing Wave||Emblem Kiora|KioraEmblem| |Generate|EMBLEM:BNG|Kiora, the Crashing Wave||Emblem Kiora|KioraEmblem|
@ -1861,4 +1863,52 @@
# GN2 # GN2
|Generate|TOK:GN2|Dinosaur|||DinosaurToken| |Generate|TOK:GN2|Dinosaur|||DinosaurToken|
|Generate|TOK:GN2|Dragon|1||DragonEggDragonToken| |Generate|TOK:GN2|Dragon|1||DragonEggDragonToken|
|Generate|TOK:GN2|Dragon|2||DragonToken2| |Generate|TOK:GN2|Dragon|2||DragonToken2|
# CLB
|Generate|TOK:CLB|Angel Warrior|||AngelWarriorVigilanceToken|
|Generate|TOK:CLB|Beast|||BeastToken|
|Generate|TOK:CLB|Boar|||Boar2Token|
|Generate|TOK:CLB|Boo|||BooToken|
|Generate|TOK:CLB|Centaur|||HuntedCentaurToken|
|Generate|TOK:CLB|Clue|||ClueArtifactToken|
|Generate|TOK:CLB|Construct|||ConstructToken|
|Generate|TOK:CLB|Demon|||Demon33Token|
|Generate|TOK:CLB|Devil|||DevilToken|
|Generate|TOK:CLB|Dragon|1||DragonToken|
|Generate|TOK:CLB|Dragon|2||DragonToken2|
|Generate|TOK:CLB|Eldrazi Horror|||EldraziHorrorToken|
|Generate|TOK:CLB|Faerie Dragon|||FaerieDragonToken|
|Generate|TOK:CLB|Goat|||GoatToken|
|Generate|TOK:CLB|Goblin|||SpyMasterGoblinToken|
|Generate|TOK:CLB|Gold|||GoldToken|
|Generate|TOK:CLB|Horror|||Horror2Token|
|Generate|TOK:CLB|Human|||HumanToken|
|Generate|TOK:CLB|Inkling|||InklingToken|
|Generate|TOK:CLB|Insect|||InsectDeathToken|
|Generate|TOK:CLB|Knight|||WaylayToken|
|Generate|TOK:CLB|Kobolds of Kher Keep|||KherKeepKoboldToken|
|Generate|TOK:CLB|Kor Warrior|||KorWarriorToken|
|Generate|TOK:CLB|Ogre|||OgreToken|
|Generate|TOK:CLB|Ox|||OxGreenToken|
|Generate|TOK:CLB|Pegasus|||PegasusToken|
|Generate|TOK:CLB|Phyrexian Beast|||PhyrexianBeastToken|
|Generate|TOK:CLB|Pirate|||PursuedWhaleToken|
|Generate|TOK:CLB|Rabbit|||RabbitToken|
|Generate|TOK:CLB|Saproling|||SaprolingToken|
|Generate|TOK:CLB|Satyr|||XenagosSatyrToken|
|Generate|TOK:CLB|Shapeshifter|1||CribSwapShapeshifterWhiteToken|
|Generate|TOK:CLB|Shapeshifter|2||ShapeshifterToken|
|Generate|TOK:CLB|Shapeshifter|3||Shapeshifter32Token|
|Generate|TOK:CLB|Shapeshifter|4||ShapeshifterBlueToken|
|Generate|TOK:CLB|Skeleton|||SkeletonMenaceToken|
|Generate|TOK:CLB|Soldier|||SoldierToken|
|Generate|TOK:CLB|Spider|||SpiderToken|
|Generate|TOK:CLB|Squid|||SquidToken|
|Generate|TOK:CLB|Squirrel|||SquirrelToken|
|Generate|TOK:CLB|Treasure|||TreasureToken|
|Generate|TOK:CLB|Volo's Journal|||VolosJournalToken|
|Generate|TOK:CLB|Warrior|||MarduStrikeLeaderWarriorToken|
|Generate|TOK:CLB|Wizard|||MagesAttendantToken|
|Generate|TOK:CLB|Wolf|||WolfToken|
|Generate|TOK:CLB|Wurm|||Wurm55Token|

View file

@ -22,7 +22,7 @@ public final class AngelWarriorVigilanceToken extends TokenImpl {
addAbility(FlyingAbility.getInstance()); addAbility(FlyingAbility.getInstance());
addAbility(VigilanceAbility.getInstance()); addAbility(VigilanceAbility.getInstance());
availableImageSetCodes = Arrays.asList("KHM"); availableImageSetCodes = Arrays.asList("KHM", "CLB");
} }
private AngelWarriorVigilanceToken(final AngelWarriorVigilanceToken token) { private AngelWarriorVigilanceToken(final AngelWarriorVigilanceToken token) {

View file

@ -22,7 +22,7 @@ public final class BeastToken extends TokenImpl {
availableImageSetCodes = Arrays.asList("5DN", "C14", "C16", "C19", "CMA", "CMD", "CN2", "GVL", availableImageSetCodes = Arrays.asList("5DN", "C14", "C16", "C19", "CMA", "CMD", "CN2", "GVL",
"DD3C", "DD3GVL", "DDD", "DDL", "DST", "E01", "EVE", "LRW", "M10", "M11", "M12", "DD3C", "DD3GVL", "DDD", "DDL", "DST", "E01", "EVE", "LRW", "M10", "M11", "M12",
"M13", "M14", "M15", "MM3", "NPH", "PC2", "USG", "M19", "IKO", "M21", "CMR", "C21", "AFC", "MIC", "NEC", "2XM", "NCC", "BBD", "PCA"); "M13", "M14", "M15", "MM3", "NPH", "PC2", "USG", "M19", "IKO", "M21", "CMR", "C21", "AFC", "MIC", "NEC", "2XM", "NCC", "BBD", "PCA", "CLB");
} }
@Override @Override

View file

@ -19,7 +19,7 @@ public final class Boar2Token extends TokenImpl {
power = new MageInt(2); power = new MageInt(2);
toughness = new MageInt(2); toughness = new MageInt(2);
availableImageSetCodes = Arrays.asList("THS", "KHC", "C21"); availableImageSetCodes = Arrays.asList("THS", "KHC", "C21", "CLB");
} }
public Boar2Token(final Boar2Token token) { public Boar2Token(final Boar2Token token) {

View file

@ -29,7 +29,7 @@ public final class ClueArtifactToken extends TokenImpl {
ability.addCost(cost); ability.addCost(cost);
this.addAbility(ability); this.addAbility(ability);
availableImageSetCodes = Arrays.asList("C18", "SOI", "MH2", "AFC", "MID", "VOC", "SLD", "2XM", "NCC"); availableImageSetCodes = Arrays.asList("C18", "SOI", "MH2", "AFC", "MID", "VOC", "SLD", "2XM", "NCC", "CLB");
} }
@Override @Override

View file

@ -19,7 +19,7 @@ public final class ConstructToken extends TokenImpl {
power = new MageInt(1); power = new MageInt(1);
toughness = new MageInt(1); toughness = new MageInt(1);
availableImageSetCodes = Arrays.asList("ZNR", "NEO"); availableImageSetCodes = Arrays.asList("ZNR", "NEO", "CLB");
} }
@Override @Override

View file

@ -21,7 +21,16 @@ public final class CribSwapShapeshifterWhiteToken extends TokenImpl {
toughness = new MageInt(1); toughness = new MageInt(1);
addAbility(new ChangelingAbility()); addAbility(new ChangelingAbility());
availableImageSetCodes = Arrays.asList("LRW", "C15", "CM2", "C18", "2XM"); availableImageSetCodes = Arrays.asList("LRW", "C15", "CM2", "C18", "2XM", "CLB");
}
@Override
public void setExpansionSetCodeForImage(String code) {
super.setExpansionSetCodeForImage(code);
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("CLB")) {
this.setTokenType(1);
}
} }
public CribSwapShapeshifterWhiteToken(final CribSwapShapeshifterWhiteToken token) { public CribSwapShapeshifterWhiteToken(final CribSwapShapeshifterWhiteToken token) {

View file

@ -34,7 +34,7 @@ public final class DevilToken extends TokenImpl {
ability.addTarget(new TargetAnyTarget()); ability.addTarget(new TargetAnyTarget());
this.addAbility(ability); this.addAbility(ability);
availableImageSetCodes = Arrays.asList("SOI", "WAR", "AFR", "MID", "SNC", "NCC"); availableImageSetCodes = Arrays.asList("SOI", "WAR", "AFR", "MID", "SNC", "NCC", "CLB");
} }
public DevilToken(final DevilToken token) { public DevilToken(final DevilToken token) {

View file

@ -17,7 +17,7 @@ public final class DragonToken extends TokenImpl {
static final private List<String> tokenImageSets = new ArrayList<>(); static final private List<String> tokenImageSets = new ArrayList<>();
static { static {
tokenImageSets.addAll(Arrays.asList("DTK", "MMA", "ALA", "MM3", "C17", "WAR", "MED")); tokenImageSets.addAll(Arrays.asList("DTK", "MMA", "ALA", "MM3", "C17", "WAR", "MED", "CLB"));
} }
public DragonToken() { public DragonToken() {
@ -55,5 +55,9 @@ public final class DragonToken extends TokenImpl {
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("C17")) { if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("C17")) {
setTokenType(1); setTokenType(1);
} }
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("CLB")) {
setTokenType(1);
}
} }
} }

View file

@ -22,7 +22,7 @@ public final class DragonToken2 extends TokenImpl {
addAbility(FlyingAbility.getInstance()); addAbility(FlyingAbility.getInstance());
availableImageSetCodes = Arrays.asList("10E", "BFZ", "C15", "C19", "CMA", "CMD", "SCG", "WWK", "M19", "KHM", "AFC", "IMA", "PCA", "CN2", "GN2"); availableImageSetCodes = Arrays.asList("10E", "BFZ", "C15", "C19", "CMA", "CMD", "SCG", "WWK", "M19", "KHM", "AFC", "IMA", "PCA", "CN2", "GN2", "CLB");
} }
public DragonToken2(final DragonToken2 token) { public DragonToken2(final DragonToken2 token) {
@ -46,5 +46,8 @@ public final class DragonToken2 extends TokenImpl {
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("GN2")) { if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("GN2")) {
this.setTokenType(2); this.setTokenType(2);
} }
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("CLB")) {
this.setTokenType(2);
}
} }
} }

View file

@ -2,6 +2,7 @@
package mage.game.permanent.token; package mage.game.permanent.token;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
import mage.MageInt; import mage.MageInt;
@ -14,12 +15,6 @@ import mage.constants.SubType;
*/ */
public final class EldraziHorrorToken extends TokenImpl { public final class EldraziHorrorToken extends TokenImpl {
static final private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Collections.singletonList("EMN"));
}
public EldraziHorrorToken() { public EldraziHorrorToken() {
super("Eldrazi Horror Token", "3/2 colorless Eldrazi Horror creature token"); super("Eldrazi Horror Token", "3/2 colorless Eldrazi Horror creature token");
cardType.add(CardType.CREATURE); cardType.add(CardType.CREATURE);
@ -27,7 +22,8 @@ public final class EldraziHorrorToken extends TokenImpl {
subtype.add(SubType.HORROR); subtype.add(SubType.HORROR);
power = new MageInt(3); power = new MageInt(3);
toughness = new MageInt(2); toughness = new MageInt(2);
availableImageSetCodes = tokenImageSets;
availableImageSetCodes = Arrays.asList("EMN", "CLB");
} }
public EldraziHorrorToken(final EldraziHorrorToken token) { public EldraziHorrorToken(final EldraziHorrorToken token) {

View file

@ -5,6 +5,8 @@ import mage.abilities.keyword.FlyingAbility;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import java.util.Arrays;
/** /**
* *
* @author weirddan455 * @author weirddan455
@ -20,6 +22,8 @@ public class FaerieDragonToken extends TokenImpl {
power = new MageInt(1); power = new MageInt(1);
toughness = new MageInt(1); toughness = new MageInt(1);
this.addAbility(FlyingAbility.getInstance()); this.addAbility(FlyingAbility.getInstance());
availableImageSetCodes = Arrays.asList("AFR", "CLB");
} }
private FaerieDragonToken(final FaerieDragonToken token) { private FaerieDragonToken(final FaerieDragonToken token) {

View file

@ -16,7 +16,7 @@ public final class GoatToken extends TokenImpl {
static final private List<String> tokenImageSets = new ArrayList<>(); static final private List<String> tokenImageSets = new ArrayList<>();
static { static {
tokenImageSets.addAll(Arrays.asList("EVE", "M13", "M14", "C14", "C16", "ELD", "THB", "NCC", "CM2", "PCA")); tokenImageSets.addAll(Arrays.asList("EVE", "M13", "M14", "C14", "C16", "ELD", "THB", "NCC", "CM2", "PCA", "CLB"));
} }
public GoatToken() { public GoatToken() {

View file

@ -18,7 +18,7 @@ public final class GoldToken extends TokenImpl {
static final private List<String> tokenImageSets = new ArrayList<>(); static final private List<String> tokenImageSets = new ArrayList<>();
static { static {
tokenImageSets.addAll(Arrays.asList("BNG", "C15", "C17", "THB")); tokenImageSets.addAll(Arrays.asList("BNG", "C15", "C17", "THB", "CLB"));
} }
public GoldToken() { public GoldToken() {

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")); availableImageSetCodes.addAll(Arrays.asList("DKA", "AVR", "FNMP", "RNA", "ELD", "C19", "C20", "MID", "VOW", "NCC", "DDQ", "CLB"));
} }
public HumanToken(final HumanToken token) { public HumanToken(final HumanToken token) {

View file

@ -16,12 +16,6 @@ import mage.abilities.keyword.ProtectionAbility;
*/ */
public final class HuntedCentaurToken extends TokenImpl { public final class HuntedCentaurToken extends TokenImpl {
static final private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("RTR", "MM3"));
}
public HuntedCentaurToken() { public HuntedCentaurToken() {
super("Centaur Token", "3/3 green Centaur creature tokens with protection from black"); super("Centaur Token", "3/3 green Centaur creature tokens with protection from black");
cardType.add(CardType.CREATURE); cardType.add(CardType.CREATURE);
@ -30,6 +24,8 @@ public final class HuntedCentaurToken extends TokenImpl {
power = new MageInt(3); power = new MageInt(3);
toughness = new MageInt(3); toughness = new MageInt(3);
this.addAbility(ProtectionAbility.from(ObjectColor.BLACK)); this.addAbility(ProtectionAbility.from(ObjectColor.BLACK));
availableImageSetCodes = Arrays.asList("RTR", "MM3", "CLB");
} }
public HuntedCentaurToken(final HuntedCentaurToken token) { public HuntedCentaurToken(final HuntedCentaurToken token) {

View file

@ -23,7 +23,7 @@ public final class InklingToken extends TokenImpl {
addAbility(FlyingAbility.getInstance()); addAbility(FlyingAbility.getInstance());
availableImageSetCodes = Arrays.asList("STX"); availableImageSetCodes = Arrays.asList("STX", "CLB");
} }
private InklingToken(final InklingToken token) { private InklingToken(final InklingToken token) {

View file

@ -23,7 +23,7 @@ public final class InsectDeathToken extends TokenImpl {
addAbility(FlyingAbility.getInstance()); addAbility(FlyingAbility.getInstance());
addAbility(DeathtouchAbility.getInstance()); addAbility(DeathtouchAbility.getInstance());
availableImageSetCodes = Arrays.asList("M15", "C20", "C21"); availableImageSetCodes = Arrays.asList("M15", "C20", "C21", "CLB");
} }
public InsectDeathToken(final InsectDeathToken token) { public InsectDeathToken(final InsectDeathToken token) {

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"); availableImageSetCodes = Arrays.asList("A25", "TSR", "CLB");
} }
public KherKeepKoboldToken(final KherKeepKoboldToken token) { public KherKeepKoboldToken(final KherKeepKoboldToken token) {
super(token); super(token);

View file

@ -20,7 +20,7 @@ public final class KorWarriorToken extends TokenImpl {
power = new MageInt(1); power = new MageInt(1);
toughness = new MageInt(1); toughness = new MageInt(1);
availableImageSetCodes = Arrays.asList("ZNR"); availableImageSetCodes = Arrays.asList("ZNR", "CLB");
} }
public KorWarriorToken(final KorWarriorToken token) { public KorWarriorToken(final KorWarriorToken token) {

View file

@ -32,7 +32,7 @@ public final class MagesAttendantToken extends TokenImpl {
ability.addTarget(new TargetSpell(StaticFilters.FILTER_SPELL_NON_CREATURE)); ability.addTarget(new TargetSpell(StaticFilters.FILTER_SPELL_NON_CREATURE));
this.addAbility(ability); this.addAbility(ability);
availableImageSetCodes = Arrays.asList("SNC"); availableImageSetCodes = Arrays.asList("SNC", "CLB");
} }
private MagesAttendantToken(final MagesAttendantToken token) { private MagesAttendantToken(final MagesAttendantToken token) {

View file

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

View file

@ -19,7 +19,7 @@ public final class OgreWarriorToken extends TokenImpl {
power = new MageInt(4); power = new MageInt(4);
toughness = new MageInt(3); toughness = new MageInt(3);
availableImageSetCodes = Arrays.asList("SNC"); availableImageSetCodes = Arrays.asList("SNC", "CLB");
} }
public OgreWarriorToken(final OgreWarriorToken token) { public OgreWarriorToken(final OgreWarriorToken token) {

View file

@ -4,6 +4,8 @@ import mage.MageInt;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import java.util.Arrays;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
@ -17,6 +19,8 @@ public final class OxGreenToken extends TokenImpl {
subtype.add(SubType.OX); subtype.add(SubType.OX);
power = new MageInt(4); power = new MageInt(4);
toughness = new MageInt(4); toughness = new MageInt(4);
availableImageSetCodes = Arrays.asList("CLB");
} }
public OxGreenToken(final OxGreenToken token) { public OxGreenToken(final OxGreenToken token) {

View file

@ -22,7 +22,7 @@ public final class PegasusToken extends TokenImpl {
addAbility(FlyingAbility.getInstance()); addAbility(FlyingAbility.getInstance());
availableImageSetCodes = Arrays.asList("C14", "C19", "CMD", "EXO", "GPT", "MIR", "TMP", "TSP", "THB", "KHC"); availableImageSetCodes = Arrays.asList("C14", "C19", "CMD", "EXO", "GPT", "MIR", "TMP", "TSP", "THB", "KHC", "CLB");
} }
public PegasusToken(final PegasusToken token) { public PegasusToken(final PegasusToken token) {

View file

@ -20,7 +20,7 @@ public final class PhyrexianBeastToken extends TokenImpl {
power = new MageInt(4); power = new MageInt(4);
toughness = new MageInt(4); toughness = new MageInt(4);
availableImageSetCodes = Arrays.asList("C21"); availableImageSetCodes = Arrays.asList("C21", "CLB");
} }
public PhyrexianBeastToken(final PhyrexianBeastToken token) { public PhyrexianBeastToken(final PhyrexianBeastToken token) {

View file

@ -28,7 +28,7 @@ public final class PursuedWhaleToken extends TokenImpl {
.setText("this creature can't block"))); .setText("this creature can't block")));
this.addAbility(new SimpleStaticAbility(new AttacksIfAbleAllEffect(StaticFilters.FILTER_CONTROLLED_CREATURES))); this.addAbility(new SimpleStaticAbility(new AttacksIfAbleAllEffect(StaticFilters.FILTER_CONTROLLED_CREATURES)));
availableImageSetCodes = Arrays.asList("M21"); availableImageSetCodes = Arrays.asList("M21", "CLB");
} }
private PursuedWhaleToken(final PursuedWhaleToken token) { private PursuedWhaleToken(final PursuedWhaleToken token) {

View file

@ -4,6 +4,8 @@ import mage.MageInt;
import mage.constants.CardType; import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import java.util.Arrays;
/** /**
* @author TheElk801 * @author TheElk801
*/ */
@ -16,6 +18,8 @@ public final class RabbitToken extends TokenImpl {
subtype.add(SubType.RABBIT); subtype.add(SubType.RABBIT);
power = new MageInt(1); power = new MageInt(1);
toughness = new MageInt(1); toughness = new MageInt(1);
availableImageSetCodes = Arrays.asList("CLB");
} }
private RabbitToken(final RabbitToken token) { private RabbitToken(final RabbitToken token) {

View file

@ -53,7 +53,8 @@ public final class SaprolingToken extends TokenImpl {
"CM2", "CM2",
"PCA", "PCA",
"GK1", "GK1",
"GK2" "GK2",
"CLB"
)); ));
} }

View file

@ -22,7 +22,7 @@ public final class ShapeshifterBlueToken extends TokenImpl {
addAbility(new ChangelingAbility()); addAbility(new ChangelingAbility());
availableImageSetCodes = Arrays.asList("KHM"); availableImageSetCodes = Arrays.asList("KHM", "CLB");
} }
private ShapeshifterBlueToken(final ShapeshifterBlueToken token) { private ShapeshifterBlueToken(final ShapeshifterBlueToken token) {

View file

@ -14,20 +14,16 @@ import java.util.List;
*/ */
public final class ShapeshifterToken extends TokenImpl { public final class ShapeshifterToken extends TokenImpl {
static final private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("C15", "LRW", "MH1"));
}
public ShapeshifterToken() { public ShapeshifterToken() {
super("Shapeshifter Token", "2/2 colorless Shapeshifter creature token with changeling"); super("Shapeshifter Token", "2/2 colorless Shapeshifter creature token with changeling");
availableImageSetCodes = tokenImageSets;
cardType.add(CardType.CREATURE); cardType.add(CardType.CREATURE);
subtype.add(SubType.SHAPESHIFTER); subtype.add(SubType.SHAPESHIFTER);
power = new MageInt(2); power = new MageInt(2);
toughness = new MageInt(2); toughness = new MageInt(2);
addAbility(new ChangelingAbility()); addAbility(new ChangelingAbility());
availableImageSetCodes = Arrays.asList("MH1", "CLB");
} }
public ShapeshifterToken(final ShapeshifterToken token) { public ShapeshifterToken(final ShapeshifterToken token) {

View file

@ -22,7 +22,7 @@ public final class SoldierToken extends TokenImpl {
availableImageSetCodes = Arrays.asList("10E", "M15", "C14", "ORI", "ALA", "DDF", "THS", "M12", "M13", availableImageSetCodes = Arrays.asList("10E", "M15", "C14", "ORI", "ALA", "DDF", "THS", "M12", "M13",
"MM2", "MMA", "RTR", "SOM", "DDO", "M10", "ORI", "EMN", "EMA", "CN2", "C16", "C18", "MM3", "E01", "MM2", "MMA", "RTR", "SOM", "DDO", "M10", "ORI", "EMN", "EMA", "CN2", "C16", "C18", "MM3", "E01",
"DOM", "MH1", "M20", "C20", "M21", "CMR", "KHC", "TSR", "2XM", "MED", "M19", "MD1", "A25"); "DOM", "MH1", "M20", "C20", "M21", "CMR", "KHC", "TSR", "2XM", "MED", "M19", "MD1", "A25", "CLB");
} }
public SoldierToken(final SoldierToken token) { public SoldierToken(final SoldierToken token) {

View file

@ -22,7 +22,7 @@ public final class SpiderToken extends TokenImpl {
this.addAbility(ReachAbility.getInstance()); this.addAbility(ReachAbility.getInstance());
availableImageSetCodes.addAll(Arrays.asList("C15", "EMN", "ISD", "SHM", "MH1", "THB", "MID", "UMA", "NCC", "CMA")); availableImageSetCodes.addAll(Arrays.asList("C15", "EMN", "ISD", "SHM", "MH1", "THB", "MID", "UMA", "NCC", "CMA", "CLB"));
} }
public SpiderToken(final SpiderToken token) { public SpiderToken(final SpiderToken token) {

View file

@ -9,6 +9,8 @@ import mage.constants.Duration;
import mage.constants.SubType; import mage.constants.SubType;
import mage.filter.StaticFilters; import mage.filter.StaticFilters;
import java.util.Arrays;
/** /**
* *
* @author spjspj * @author spjspj
@ -24,6 +26,8 @@ public final class SpyMasterGoblinToken extends TokenImpl {
toughness = new MageInt(1); toughness = new MageInt(1);
this.addAbility(new SimpleStaticAbility(new AttacksIfAbleAllEffect(StaticFilters.FILTER_CONTROLLED_CREATURES))); this.addAbility(new SimpleStaticAbility(new AttacksIfAbleAllEffect(StaticFilters.FILTER_CONTROLLED_CREATURES)));
availableImageSetCodes = Arrays.asList("C16", "CLB");
} }
public SpyMasterGoblinToken(final SpyMasterGoblinToken token) { public SpyMasterGoblinToken(final SpyMasterGoblinToken token) {

View file

@ -23,7 +23,7 @@ public final class SquidToken extends TokenImpl {
this.addAbility(new IslandwalkAbility()); this.addAbility(new IslandwalkAbility());
availableImageSetCodes = Arrays.asList("M15", "C16", "NCC"); availableImageSetCodes = Arrays.asList("M15", "C16", "NCC", "CLB");
} }
private SquidToken(final SquidToken token) { private SquidToken(final SquidToken token) {

View file

@ -20,7 +20,7 @@ public final class SquirrelToken extends TokenImpl {
toughness = new MageInt(1); toughness = new MageInt(1);
availableImageSetCodes = Arrays.asList("CMD", "CNS", "ODY", "PCY", "TOR", "ULG", "UNH", "WMA", availableImageSetCodes = Arrays.asList("CMD", "CNS", "ODY", "PCY", "TOR", "ULG", "UNH", "WMA",
"WTH", "MH1", "MH2", "2XM"); "WTH", "MH1", "MH2", "2XM", "CLB");
} }
public SquirrelToken(final SquirrelToken token) { public SquirrelToken(final SquirrelToken token) {

View file

@ -27,7 +27,7 @@ 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"); availableImageSetCodes = Arrays.asList("XLN", "RNA", "M20", "C19", "C20", "M21", "CMR", "KHM", "STX", "MH2", "AFR", "VOW", "NEO", "SLD", "2XM", "SNC", "CLB");
} }
public TreasureToken(final TreasureToken token) { public TreasureToken(final TreasureToken token) {

View file

@ -14,6 +14,7 @@ import mage.game.stack.Spell;
import mage.players.Player; import mage.players.Player;
import mage.util.RandomUtil; import mage.util.RandomUtil;
import java.util.Arrays;
import java.util.HashSet; import java.util.HashSet;
import java.util.Set; import java.util.Set;
import java.util.UUID; import java.util.UUID;
@ -33,6 +34,8 @@ public final class VolosJournalToken extends TokenImpl {
this.addAbility(new SpellCastControllerTriggeredAbility( this.addAbility(new SpellCastControllerTriggeredAbility(
new VolosJournalTokenEffect(), StaticFilters.FILTER_SPELL_A_CREATURE, false new VolosJournalTokenEffect(), StaticFilters.FILTER_SPELL_A_CREATURE, false
).addHint(VolosJournalTokenHint.instance)); ).addHint(VolosJournalTokenHint.instance));
availableImageSetCodes = Arrays.asList("CLB");
} }
public VolosJournalToken(final VolosJournalToken token) { public VolosJournalToken(final VolosJournalToken token) {

View file

@ -5,6 +5,8 @@ import mage.constants.CardType;
import mage.constants.SubType; import mage.constants.SubType;
import mage.MageInt; import mage.MageInt;
import java.util.Arrays;
/** /**
* *
* @author spjspj * @author spjspj
@ -18,6 +20,8 @@ public final class WaylayToken extends TokenImpl {
subtype.add(SubType.KNIGHT); subtype.add(SubType.KNIGHT);
power = new MageInt(2); power = new MageInt(2);
toughness = new MageInt(2); toughness = new MageInt(2);
availableImageSetCodes = Arrays.asList("CLB");
} }
public WaylayToken(final WaylayToken token) { public WaylayToken(final WaylayToken token) {

View file

@ -23,7 +23,7 @@ public final class WolfToken extends TokenImpl {
availableImageSetCodes = Arrays.asList("BNG", "C14", "C15", "CMA", "CMD", "CNS", "ISD", availableImageSetCodes = Arrays.asList("BNG", "C14", "C15", "CMA", "CMD", "CNS", "ISD",
"LRW", "M10", "M14", "MM2", "SHM", "SOI", "SOM", "V10", "ZEN", "WAR", "M20", "LRW", "M10", "M14", "MM2", "SHM", "SOI", "SOM", "V10", "ZEN", "WAR", "M20",
"THB", "AFR", "MID", "VOW", "2XM", "A25"); "THB", "AFR", "MID", "VOW", "2XM", "A25", "CLB");
} }
@Override @Override

View file

@ -19,7 +19,7 @@ public final class Wurm55Token extends TokenImpl {
power = new MageInt(5); power = new MageInt(5);
toughness = new MageInt(5); toughness = new MageInt(5);
availableImageSetCodes = Arrays.asList("AKH", "NCC"); availableImageSetCodes = Arrays.asList("AKH", "NCC", "CLB");
} }
public Wurm55Token(final Wurm55Token token) { public Wurm55Token(final Wurm55Token token) {

View file

@ -25,7 +25,7 @@ public final class XenagosSatyrToken extends TokenImpl {
this.addAbility(HasteAbility.getInstance()); this.addAbility(HasteAbility.getInstance());
availableImageSetCodes = Arrays.asList("THS"); availableImageSetCodes = Arrays.asList("THS", "CLB");
} }
public XenagosSatyrToken(final XenagosSatyrToken token) { public XenagosSatyrToken(final XenagosSatyrToken token) {
super(token); super(token);