diff --git a/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/ScryfallImageSupportTokens.java b/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/ScryfallImageSupportTokens.java index d3c0afd4eb..1060900c42 100644 --- a/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/ScryfallImageSupportTokens.java +++ b/Mage.Client/src/main/java/org/mage/plugins/card/dl/sources/ScryfallImageSupportTokens.java @@ -1652,6 +1652,56 @@ public class ScryfallImageSupportTokens { 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"); + // 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 supportedSets.clear(); for (String cardName : this.keySet()) { diff --git a/Mage.Client/src/main/resources/card-pictures-tok.txt b/Mage.Client/src/main/resources/card-pictures-tok.txt index 9865dd43b5..802638a066 100644 --- a/Mage.Client/src/main/resources/card-pictures-tok.txt +++ b/Mage.Client/src/main/resources/card-pictures-tok.txt @@ -84,6 +84,8 @@ |Generate|EMBLEM!:MED|Emblem Vraska|||VraskaGolgariQueenEmblem| |Generate|EMBLEM!:BBD|Emblem Rowan Kenrith|||RowanKenrithEmblem| |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:AVR|Tamiyo, the Moon Sage||Emblem Tamiyo|TamiyoTheMoonSageEmblem| |Generate|EMBLEM:BNG|Kiora, the Crashing Wave||Emblem Kiora|KioraEmblem| @@ -1861,4 +1863,52 @@ # GN2 |Generate|TOK:GN2|Dinosaur|||DinosaurToken| |Generate|TOK:GN2|Dragon|1||DragonEggDragonToken| -|Generate|TOK:GN2|Dragon|2||DragonToken2| \ No newline at end of file +|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| \ No newline at end of file diff --git a/Mage/src/main/java/mage/game/permanent/token/AngelWarriorVigilanceToken.java b/Mage/src/main/java/mage/game/permanent/token/AngelWarriorVigilanceToken.java index ef29130c8e..955d3962e3 100644 --- a/Mage/src/main/java/mage/game/permanent/token/AngelWarriorVigilanceToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/AngelWarriorVigilanceToken.java @@ -22,7 +22,7 @@ public final class AngelWarriorVigilanceToken extends TokenImpl { addAbility(FlyingAbility.getInstance()); addAbility(VigilanceAbility.getInstance()); - availableImageSetCodes = Arrays.asList("KHM"); + availableImageSetCodes = Arrays.asList("KHM", "CLB"); } private AngelWarriorVigilanceToken(final AngelWarriorVigilanceToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/BeastToken.java b/Mage/src/main/java/mage/game/permanent/token/BeastToken.java index c553c60995..eb40aaee14 100644 --- a/Mage/src/main/java/mage/game/permanent/token/BeastToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/BeastToken.java @@ -22,7 +22,7 @@ public final class BeastToken extends TokenImpl { availableImageSetCodes = Arrays.asList("5DN", "C14", "C16", "C19", "CMA", "CMD", "CN2", "GVL", "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 diff --git a/Mage/src/main/java/mage/game/permanent/token/Boar2Token.java b/Mage/src/main/java/mage/game/permanent/token/Boar2Token.java index c71b8a30e0..6447191600 100644 --- a/Mage/src/main/java/mage/game/permanent/token/Boar2Token.java +++ b/Mage/src/main/java/mage/game/permanent/token/Boar2Token.java @@ -19,7 +19,7 @@ public final class Boar2Token extends TokenImpl { power = 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) { diff --git a/Mage/src/main/java/mage/game/permanent/token/ClueArtifactToken.java b/Mage/src/main/java/mage/game/permanent/token/ClueArtifactToken.java index e30ea70a9e..52da8da053 100644 --- a/Mage/src/main/java/mage/game/permanent/token/ClueArtifactToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/ClueArtifactToken.java @@ -29,7 +29,7 @@ public final class ClueArtifactToken extends TokenImpl { ability.addCost(cost); 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 diff --git a/Mage/src/main/java/mage/game/permanent/token/ConstructToken.java b/Mage/src/main/java/mage/game/permanent/token/ConstructToken.java index 106a1d78e6..4c141062b7 100644 --- a/Mage/src/main/java/mage/game/permanent/token/ConstructToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/ConstructToken.java @@ -19,7 +19,7 @@ public final class ConstructToken extends TokenImpl { power = new MageInt(1); toughness = new MageInt(1); - availableImageSetCodes = Arrays.asList("ZNR", "NEO"); + availableImageSetCodes = Arrays.asList("ZNR", "NEO", "CLB"); } @Override diff --git a/Mage/src/main/java/mage/game/permanent/token/CribSwapShapeshifterWhiteToken.java b/Mage/src/main/java/mage/game/permanent/token/CribSwapShapeshifterWhiteToken.java index 6686003399..0dcad4637a 100644 --- a/Mage/src/main/java/mage/game/permanent/token/CribSwapShapeshifterWhiteToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/CribSwapShapeshifterWhiteToken.java @@ -21,7 +21,16 @@ public final class CribSwapShapeshifterWhiteToken extends TokenImpl { toughness = new MageInt(1); 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) { diff --git a/Mage/src/main/java/mage/game/permanent/token/DevilToken.java b/Mage/src/main/java/mage/game/permanent/token/DevilToken.java index c15f70986f..dcfb10d472 100644 --- a/Mage/src/main/java/mage/game/permanent/token/DevilToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/DevilToken.java @@ -34,7 +34,7 @@ public final class DevilToken extends TokenImpl { ability.addTarget(new TargetAnyTarget()); 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) { diff --git a/Mage/src/main/java/mage/game/permanent/token/DragonToken.java b/Mage/src/main/java/mage/game/permanent/token/DragonToken.java index ca299c77fe..cac839046c 100644 --- a/Mage/src/main/java/mage/game/permanent/token/DragonToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/DragonToken.java @@ -17,7 +17,7 @@ public final class DragonToken extends TokenImpl { static final private List tokenImageSets = new ArrayList<>(); 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() { @@ -55,5 +55,9 @@ public final class DragonToken extends TokenImpl { if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("C17")) { setTokenType(1); } + + if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("CLB")) { + setTokenType(1); + } } } diff --git a/Mage/src/main/java/mage/game/permanent/token/DragonToken2.java b/Mage/src/main/java/mage/game/permanent/token/DragonToken2.java index a332316020..44d4d0e4a7 100644 --- a/Mage/src/main/java/mage/game/permanent/token/DragonToken2.java +++ b/Mage/src/main/java/mage/game/permanent/token/DragonToken2.java @@ -22,7 +22,7 @@ public final class DragonToken2 extends TokenImpl { 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) { @@ -46,5 +46,8 @@ public final class DragonToken2 extends TokenImpl { if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("GN2")) { this.setTokenType(2); } + if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("CLB")) { + this.setTokenType(2); + } } } diff --git a/Mage/src/main/java/mage/game/permanent/token/EldraziHorrorToken.java b/Mage/src/main/java/mage/game/permanent/token/EldraziHorrorToken.java index 6672d2ba12..61b738d480 100644 --- a/Mage/src/main/java/mage/game/permanent/token/EldraziHorrorToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/EldraziHorrorToken.java @@ -2,6 +2,7 @@ package mage.game.permanent.token; import java.util.ArrayList; +import java.util.Arrays; import java.util.Collections; import java.util.List; import mage.MageInt; @@ -14,12 +15,6 @@ import mage.constants.SubType; */ public final class EldraziHorrorToken extends TokenImpl { - static final private List tokenImageSets = new ArrayList<>(); - - static { - tokenImageSets.addAll(Collections.singletonList("EMN")); - } - public EldraziHorrorToken() { super("Eldrazi Horror Token", "3/2 colorless Eldrazi Horror creature token"); cardType.add(CardType.CREATURE); @@ -27,7 +22,8 @@ public final class EldraziHorrorToken extends TokenImpl { subtype.add(SubType.HORROR); power = new MageInt(3); toughness = new MageInt(2); - availableImageSetCodes = tokenImageSets; + + availableImageSetCodes = Arrays.asList("EMN", "CLB"); } public EldraziHorrorToken(final EldraziHorrorToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/FaerieDragonToken.java b/Mage/src/main/java/mage/game/permanent/token/FaerieDragonToken.java index 9cd0b70087..3150f3af8c 100644 --- a/Mage/src/main/java/mage/game/permanent/token/FaerieDragonToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/FaerieDragonToken.java @@ -5,6 +5,8 @@ import mage.abilities.keyword.FlyingAbility; import mage.constants.CardType; import mage.constants.SubType; +import java.util.Arrays; + /** * * @author weirddan455 @@ -20,6 +22,8 @@ public class FaerieDragonToken extends TokenImpl { power = new MageInt(1); toughness = new MageInt(1); this.addAbility(FlyingAbility.getInstance()); + + availableImageSetCodes = Arrays.asList("AFR", "CLB"); } private FaerieDragonToken(final FaerieDragonToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/GoatToken.java b/Mage/src/main/java/mage/game/permanent/token/GoatToken.java index 26c0565daa..8a8b8bc1f9 100644 --- a/Mage/src/main/java/mage/game/permanent/token/GoatToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/GoatToken.java @@ -16,7 +16,7 @@ public final class GoatToken extends TokenImpl { static final private List tokenImageSets = new ArrayList<>(); 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() { diff --git a/Mage/src/main/java/mage/game/permanent/token/GoldToken.java b/Mage/src/main/java/mage/game/permanent/token/GoldToken.java index 916ed53d1e..0ab6538cef 100644 --- a/Mage/src/main/java/mage/game/permanent/token/GoldToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/GoldToken.java @@ -18,7 +18,7 @@ public final class GoldToken extends TokenImpl { static final private List tokenImageSets = new ArrayList<>(); static { - tokenImageSets.addAll(Arrays.asList("BNG", "C15", "C17", "THB")); + tokenImageSets.addAll(Arrays.asList("BNG", "C15", "C17", "THB", "CLB")); } public GoldToken() { diff --git a/Mage/src/main/java/mage/game/permanent/token/HumanToken.java b/Mage/src/main/java/mage/game/permanent/token/HumanToken.java index a78e404560..5a0453b6c9 100644 --- a/Mage/src/main/java/mage/game/permanent/token/HumanToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/HumanToken.java @@ -19,7 +19,7 @@ public final class HumanToken extends TokenImpl { power = 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) { diff --git a/Mage/src/main/java/mage/game/permanent/token/HuntedCentaurToken.java b/Mage/src/main/java/mage/game/permanent/token/HuntedCentaurToken.java index e82bd1819c..56d50e2fb7 100644 --- a/Mage/src/main/java/mage/game/permanent/token/HuntedCentaurToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/HuntedCentaurToken.java @@ -16,12 +16,6 @@ import mage.abilities.keyword.ProtectionAbility; */ public final class HuntedCentaurToken extends TokenImpl { - static final private List tokenImageSets = new ArrayList<>(); - - static { - tokenImageSets.addAll(Arrays.asList("RTR", "MM3")); - } - public HuntedCentaurToken() { super("Centaur Token", "3/3 green Centaur creature tokens with protection from black"); cardType.add(CardType.CREATURE); @@ -30,6 +24,8 @@ public final class HuntedCentaurToken extends TokenImpl { power = new MageInt(3); toughness = new MageInt(3); this.addAbility(ProtectionAbility.from(ObjectColor.BLACK)); + + availableImageSetCodes = Arrays.asList("RTR", "MM3", "CLB"); } public HuntedCentaurToken(final HuntedCentaurToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/InklingToken.java b/Mage/src/main/java/mage/game/permanent/token/InklingToken.java index f53e466259..3419408b04 100644 --- a/Mage/src/main/java/mage/game/permanent/token/InklingToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/InklingToken.java @@ -23,7 +23,7 @@ public final class InklingToken extends TokenImpl { addAbility(FlyingAbility.getInstance()); - availableImageSetCodes = Arrays.asList("STX"); + availableImageSetCodes = Arrays.asList("STX", "CLB"); } private InklingToken(final InklingToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/InsectDeathToken.java b/Mage/src/main/java/mage/game/permanent/token/InsectDeathToken.java index 884c081292..2c7985c899 100644 --- a/Mage/src/main/java/mage/game/permanent/token/InsectDeathToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/InsectDeathToken.java @@ -23,7 +23,7 @@ public final class InsectDeathToken extends TokenImpl { addAbility(FlyingAbility.getInstance()); addAbility(DeathtouchAbility.getInstance()); - availableImageSetCodes = Arrays.asList("M15", "C20", "C21"); + availableImageSetCodes = Arrays.asList("M15", "C20", "C21", "CLB"); } public InsectDeathToken(final InsectDeathToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/KherKeepKoboldToken.java b/Mage/src/main/java/mage/game/permanent/token/KherKeepKoboldToken.java index 302e7b64bd..f9125c2a4c 100644 --- a/Mage/src/main/java/mage/game/permanent/token/KherKeepKoboldToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/KherKeepKoboldToken.java @@ -21,7 +21,7 @@ public final class KherKeepKoboldToken extends TokenImpl { power = new MageInt(0); toughness = new MageInt(1); - availableImageSetCodes = Arrays.asList("A25", "TSR"); + availableImageSetCodes = Arrays.asList("A25", "TSR", "CLB"); } public KherKeepKoboldToken(final KherKeepKoboldToken token) { super(token); diff --git a/Mage/src/main/java/mage/game/permanent/token/KorWarriorToken.java b/Mage/src/main/java/mage/game/permanent/token/KorWarriorToken.java index 4e75f1cef6..85afc7a1ee 100644 --- a/Mage/src/main/java/mage/game/permanent/token/KorWarriorToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/KorWarriorToken.java @@ -20,7 +20,7 @@ public final class KorWarriorToken extends TokenImpl { power = new MageInt(1); toughness = new MageInt(1); - availableImageSetCodes = Arrays.asList("ZNR"); + availableImageSetCodes = Arrays.asList("ZNR", "CLB"); } public KorWarriorToken(final KorWarriorToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/MagesAttendantToken.java b/Mage/src/main/java/mage/game/permanent/token/MagesAttendantToken.java index 25b05924fd..0df5ed602e 100644 --- a/Mage/src/main/java/mage/game/permanent/token/MagesAttendantToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/MagesAttendantToken.java @@ -32,7 +32,7 @@ public final class MagesAttendantToken extends TokenImpl { ability.addTarget(new TargetSpell(StaticFilters.FILTER_SPELL_NON_CREATURE)); this.addAbility(ability); - availableImageSetCodes = Arrays.asList("SNC"); + availableImageSetCodes = Arrays.asList("SNC", "CLB"); } private MagesAttendantToken(final MagesAttendantToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/MarduStrikeLeaderWarriorToken.java b/Mage/src/main/java/mage/game/permanent/token/MarduStrikeLeaderWarriorToken.java index 56f9028fd2..ee180f1e78 100644 --- a/Mage/src/main/java/mage/game/permanent/token/MarduStrikeLeaderWarriorToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/MarduStrikeLeaderWarriorToken.java @@ -21,7 +21,7 @@ public final class MarduStrikeLeaderWarriorToken extends TokenImpl { power = new MageInt(2); toughness = new MageInt(1); - availableImageSetCodes = Arrays.asList("FRF"); + availableImageSetCodes = Arrays.asList("FRF", "CLB"); } public MarduStrikeLeaderWarriorToken(final MarduStrikeLeaderWarriorToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/OgreWarriorToken.java b/Mage/src/main/java/mage/game/permanent/token/OgreWarriorToken.java index 4f7d8b31af..dc4d11d27b 100644 --- a/Mage/src/main/java/mage/game/permanent/token/OgreWarriorToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/OgreWarriorToken.java @@ -19,7 +19,7 @@ public final class OgreWarriorToken extends TokenImpl { power = new MageInt(4); toughness = new MageInt(3); - availableImageSetCodes = Arrays.asList("SNC"); + availableImageSetCodes = Arrays.asList("SNC", "CLB"); } public OgreWarriorToken(final OgreWarriorToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/OxGreenToken.java b/Mage/src/main/java/mage/game/permanent/token/OxGreenToken.java index fa12465aac..3c1777497d 100644 --- a/Mage/src/main/java/mage/game/permanent/token/OxGreenToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/OxGreenToken.java @@ -4,6 +4,8 @@ import mage.MageInt; import mage.constants.CardType; import mage.constants.SubType; +import java.util.Arrays; + /** * @author TheElk801 */ @@ -17,6 +19,8 @@ public final class OxGreenToken extends TokenImpl { subtype.add(SubType.OX); power = new MageInt(4); toughness = new MageInt(4); + + availableImageSetCodes = Arrays.asList("CLB"); } public OxGreenToken(final OxGreenToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/PegasusToken.java b/Mage/src/main/java/mage/game/permanent/token/PegasusToken.java index 26554dfb36..e1efc4ca2b 100644 --- a/Mage/src/main/java/mage/game/permanent/token/PegasusToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/PegasusToken.java @@ -22,7 +22,7 @@ public final class PegasusToken extends TokenImpl { 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) { diff --git a/Mage/src/main/java/mage/game/permanent/token/PhyrexianBeastToken.java b/Mage/src/main/java/mage/game/permanent/token/PhyrexianBeastToken.java index b859ba35db..506ed3685b 100644 --- a/Mage/src/main/java/mage/game/permanent/token/PhyrexianBeastToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/PhyrexianBeastToken.java @@ -20,7 +20,7 @@ public final class PhyrexianBeastToken extends TokenImpl { power = new MageInt(4); toughness = new MageInt(4); - availableImageSetCodes = Arrays.asList("C21"); + availableImageSetCodes = Arrays.asList("C21", "CLB"); } public PhyrexianBeastToken(final PhyrexianBeastToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/PursuedWhaleToken.java b/Mage/src/main/java/mage/game/permanent/token/PursuedWhaleToken.java index 21b95780a3..738d85fc51 100644 --- a/Mage/src/main/java/mage/game/permanent/token/PursuedWhaleToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/PursuedWhaleToken.java @@ -28,7 +28,7 @@ public final class PursuedWhaleToken extends TokenImpl { .setText("this creature can't block"))); this.addAbility(new SimpleStaticAbility(new AttacksIfAbleAllEffect(StaticFilters.FILTER_CONTROLLED_CREATURES))); - availableImageSetCodes = Arrays.asList("M21"); + availableImageSetCodes = Arrays.asList("M21", "CLB"); } private PursuedWhaleToken(final PursuedWhaleToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/RabbitToken.java b/Mage/src/main/java/mage/game/permanent/token/RabbitToken.java index 5a4d5a3f78..d352e1c6af 100644 --- a/Mage/src/main/java/mage/game/permanent/token/RabbitToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/RabbitToken.java @@ -4,6 +4,8 @@ import mage.MageInt; import mage.constants.CardType; import mage.constants.SubType; +import java.util.Arrays; + /** * @author TheElk801 */ @@ -16,6 +18,8 @@ public final class RabbitToken extends TokenImpl { subtype.add(SubType.RABBIT); power = new MageInt(1); toughness = new MageInt(1); + + availableImageSetCodes = Arrays.asList("CLB"); } private RabbitToken(final RabbitToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/SaprolingToken.java b/Mage/src/main/java/mage/game/permanent/token/SaprolingToken.java index 95417d7ed4..e78fd167b6 100644 --- a/Mage/src/main/java/mage/game/permanent/token/SaprolingToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/SaprolingToken.java @@ -53,7 +53,8 @@ public final class SaprolingToken extends TokenImpl { "CM2", "PCA", "GK1", - "GK2" + "GK2", + "CLB" )); } diff --git a/Mage/src/main/java/mage/game/permanent/token/ShapeshifterBlueToken.java b/Mage/src/main/java/mage/game/permanent/token/ShapeshifterBlueToken.java index 4cdf224006..86ca3b8554 100644 --- a/Mage/src/main/java/mage/game/permanent/token/ShapeshifterBlueToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/ShapeshifterBlueToken.java @@ -22,7 +22,7 @@ public final class ShapeshifterBlueToken extends TokenImpl { addAbility(new ChangelingAbility()); - availableImageSetCodes = Arrays.asList("KHM"); + availableImageSetCodes = Arrays.asList("KHM", "CLB"); } private ShapeshifterBlueToken(final ShapeshifterBlueToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/ShapeshifterToken.java b/Mage/src/main/java/mage/game/permanent/token/ShapeshifterToken.java index 940cdb17db..f86b17c459 100644 --- a/Mage/src/main/java/mage/game/permanent/token/ShapeshifterToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/ShapeshifterToken.java @@ -14,20 +14,16 @@ import java.util.List; */ public final class ShapeshifterToken extends TokenImpl { - static final private List tokenImageSets = new ArrayList<>(); - - static { - tokenImageSets.addAll(Arrays.asList("C15", "LRW", "MH1")); - } public ShapeshifterToken() { super("Shapeshifter Token", "2/2 colorless Shapeshifter creature token with changeling"); - availableImageSetCodes = tokenImageSets; cardType.add(CardType.CREATURE); subtype.add(SubType.SHAPESHIFTER); power = new MageInt(2); toughness = new MageInt(2); addAbility(new ChangelingAbility()); + + availableImageSetCodes = Arrays.asList("MH1", "CLB"); } public ShapeshifterToken(final ShapeshifterToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/SoldierToken.java b/Mage/src/main/java/mage/game/permanent/token/SoldierToken.java index c0d0fae633..166ac17667 100644 --- a/Mage/src/main/java/mage/game/permanent/token/SoldierToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/SoldierToken.java @@ -22,7 +22,7 @@ public final class SoldierToken extends TokenImpl { 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", - "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) { diff --git a/Mage/src/main/java/mage/game/permanent/token/SpiderToken.java b/Mage/src/main/java/mage/game/permanent/token/SpiderToken.java index 49d6998e05..570b2087d6 100644 --- a/Mage/src/main/java/mage/game/permanent/token/SpiderToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/SpiderToken.java @@ -22,7 +22,7 @@ public final class SpiderToken extends TokenImpl { 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) { diff --git a/Mage/src/main/java/mage/game/permanent/token/SpyMasterGoblinToken.java b/Mage/src/main/java/mage/game/permanent/token/SpyMasterGoblinToken.java index 6dbf66a312..6007549de1 100644 --- a/Mage/src/main/java/mage/game/permanent/token/SpyMasterGoblinToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/SpyMasterGoblinToken.java @@ -9,6 +9,8 @@ import mage.constants.Duration; import mage.constants.SubType; import mage.filter.StaticFilters; +import java.util.Arrays; + /** * * @author spjspj @@ -24,6 +26,8 @@ public final class SpyMasterGoblinToken extends TokenImpl { toughness = new MageInt(1); this.addAbility(new SimpleStaticAbility(new AttacksIfAbleAllEffect(StaticFilters.FILTER_CONTROLLED_CREATURES))); + + availableImageSetCodes = Arrays.asList("C16", "CLB"); } public SpyMasterGoblinToken(final SpyMasterGoblinToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/SquidToken.java b/Mage/src/main/java/mage/game/permanent/token/SquidToken.java index 0c7fef474a..669d71455a 100644 --- a/Mage/src/main/java/mage/game/permanent/token/SquidToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/SquidToken.java @@ -23,7 +23,7 @@ public final class SquidToken extends TokenImpl { this.addAbility(new IslandwalkAbility()); - availableImageSetCodes = Arrays.asList("M15", "C16", "NCC"); + availableImageSetCodes = Arrays.asList("M15", "C16", "NCC", "CLB"); } private SquidToken(final SquidToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/SquirrelToken.java b/Mage/src/main/java/mage/game/permanent/token/SquirrelToken.java index f33268a59f..253231ba3b 100644 --- a/Mage/src/main/java/mage/game/permanent/token/SquirrelToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/SquirrelToken.java @@ -20,7 +20,7 @@ public final class SquirrelToken extends TokenImpl { toughness = new MageInt(1); 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) { diff --git a/Mage/src/main/java/mage/game/permanent/token/TreasureToken.java b/Mage/src/main/java/mage/game/permanent/token/TreasureToken.java index a854c22868..f2be790b8b 100644 --- a/Mage/src/main/java/mage/game/permanent/token/TreasureToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/TreasureToken.java @@ -27,7 +27,7 @@ public final class TreasureToken extends TokenImpl { ability.addCost(new SacrificeSourceCost()); 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) { diff --git a/Mage/src/main/java/mage/game/permanent/token/VolosJournalToken.java b/Mage/src/main/java/mage/game/permanent/token/VolosJournalToken.java index 1c1a3d4a3b..4b00232613 100644 --- a/Mage/src/main/java/mage/game/permanent/token/VolosJournalToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/VolosJournalToken.java @@ -14,6 +14,7 @@ import mage.game.stack.Spell; import mage.players.Player; import mage.util.RandomUtil; +import java.util.Arrays; import java.util.HashSet; import java.util.Set; import java.util.UUID; @@ -33,6 +34,8 @@ public final class VolosJournalToken extends TokenImpl { this.addAbility(new SpellCastControllerTriggeredAbility( new VolosJournalTokenEffect(), StaticFilters.FILTER_SPELL_A_CREATURE, false ).addHint(VolosJournalTokenHint.instance)); + + availableImageSetCodes = Arrays.asList("CLB"); } public VolosJournalToken(final VolosJournalToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/WaylayToken.java b/Mage/src/main/java/mage/game/permanent/token/WaylayToken.java index ff87ed2f45..423523f88c 100644 --- a/Mage/src/main/java/mage/game/permanent/token/WaylayToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/WaylayToken.java @@ -5,6 +5,8 @@ import mage.constants.CardType; import mage.constants.SubType; import mage.MageInt; +import java.util.Arrays; + /** * * @author spjspj @@ -18,6 +20,8 @@ public final class WaylayToken extends TokenImpl { subtype.add(SubType.KNIGHT); power = new MageInt(2); toughness = new MageInt(2); + + availableImageSetCodes = Arrays.asList("CLB"); } public WaylayToken(final WaylayToken token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/WolfToken.java b/Mage/src/main/java/mage/game/permanent/token/WolfToken.java index 21e692eecb..0ede9b3c1e 100644 --- a/Mage/src/main/java/mage/game/permanent/token/WolfToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/WolfToken.java @@ -23,7 +23,7 @@ public final class WolfToken extends TokenImpl { availableImageSetCodes = Arrays.asList("BNG", "C14", "C15", "CMA", "CMD", "CNS", "ISD", "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 diff --git a/Mage/src/main/java/mage/game/permanent/token/Wurm55Token.java b/Mage/src/main/java/mage/game/permanent/token/Wurm55Token.java index d62c2bb4f0..bf6c45fccf 100644 --- a/Mage/src/main/java/mage/game/permanent/token/Wurm55Token.java +++ b/Mage/src/main/java/mage/game/permanent/token/Wurm55Token.java @@ -19,7 +19,7 @@ public final class Wurm55Token extends TokenImpl { power = new MageInt(5); toughness = new MageInt(5); - availableImageSetCodes = Arrays.asList("AKH", "NCC"); + availableImageSetCodes = Arrays.asList("AKH", "NCC", "CLB"); } public Wurm55Token(final Wurm55Token token) { diff --git a/Mage/src/main/java/mage/game/permanent/token/XenagosSatyrToken.java b/Mage/src/main/java/mage/game/permanent/token/XenagosSatyrToken.java index aeb72ef194..4db3e4ad08 100644 --- a/Mage/src/main/java/mage/game/permanent/token/XenagosSatyrToken.java +++ b/Mage/src/main/java/mage/game/permanent/token/XenagosSatyrToken.java @@ -25,7 +25,7 @@ public final class XenagosSatyrToken extends TokenImpl { this.addAbility(HasteAbility.getInstance()); - availableImageSetCodes = Arrays.asList("THS"); + availableImageSetCodes = Arrays.asList("THS", "CLB"); } public XenagosSatyrToken(final XenagosSatyrToken token) { super(token);