Add MOC token images

This commit is contained in:
PurpleCrowbar 2023-04-18 16:27:48 +01:00
parent d3d99d609b
commit 89201937f7
43 changed files with 166 additions and 64 deletions

View file

@ -1940,6 +1940,52 @@ public class ScryfallImageSupportTokens {
put ("MOM/Emblem Wrenn and Realmbreaker", "https://api.scryfall.com/cards/tmom/23/en?format=image");
put ("MOM/Zombie", "https://api.scryfall.com/cards/tmom/5/en?format=image");
// MOC
put ("MOC/Angel/1", "https://api.scryfall.com/cards/tmoc/3/en?format=image");
put ("MOC/Angel/2", "https://api.scryfall.com/cards/tmoc/4/en?format=image");
put ("MOC/Assassin", "https://api.scryfall.com/cards/tmoc/17/en?format=image");
put ("MOC/Beast", "https://api.scryfall.com/cards/tmoc/28/en?format=image");
put ("MOC/Bird", "https://api.scryfall.com/cards/tmoc/5/en?format=image");
put ("MOC/Blood", "https://api.scryfall.com/cards/tmoc/32/en?format=image");
put ("MOC/Butterfly", "https://api.scryfall.com/cards/tmoc/29/en?format=image");
put ("MOC/Clue", "https://api.scryfall.com/cards/tmoc/33/en?format=image");
put ("MOC/Construct", "https://api.scryfall.com/cards/tmoc/34/en?format=image");
put ("MOC/Demon", "https://api.scryfall.com/cards/tmoc/18/en?format=image");
put ("MOC/Eldrazi", "https://api.scryfall.com/cards/tmoc/1/en?format=image");
put ("MOC/Elemental", "https://api.scryfall.com/cards/tmoc/22/en?format=image");
put ("MOC/Elephant", "https://api.scryfall.com/cards/tmoc/30/en?format=image");
put ("MOC/Emblem Elspeth, Sun's Champion", "https://api.scryfall.com/cards/tmoc/43/en?format=image");
put ("MOC/Faerie", "https://api.scryfall.com/cards/tmoc/11/en?format=image");
put ("MOC/Feather", "https://api.scryfall.com/cards/tmoc/23/en?format=image");
put ("MOC/Food", "https://api.scryfall.com/cards/tmoc/35/en?format=image");
put ("MOC/Goblin", "https://api.scryfall.com/cards/tmoc/24/en?format=image");
put ("MOC/Gold", "https://api.scryfall.com/cards/tmoc/36/en?format=image");
put ("MOC/Golem", "https://api.scryfall.com/cards/tmoc/37/en?format=image");
put ("MOC/Gremlin", "https://api.scryfall.com/cards/tmoc/25/en?format=image");
put ("MOC/Human/1", "https://api.scryfall.com/cards/tmoc/26/en?format=image");
put ("MOC/Human/2", "https://api.scryfall.com/cards/tmoc/6/en?format=image");
put ("MOC/Insect", "https://api.scryfall.com/cards/tmoc/31/en?format=image");
put ("MOC/Knight", "https://api.scryfall.com/cards/tmoc/7/en?format=image");
put ("MOC/Kobolds of Kher Keep", "https://api.scryfall.com/cards/tmoc/27/en?format=image");
put ("MOC/Myr", "https://api.scryfall.com/cards/tmoc/38/en?format=image");
put ("MOC/Phyrexian Germ", "https://api.scryfall.com/cards/tmoc/19/en?format=image");
put ("MOC/Phyrexian Golem", "https://api.scryfall.com/cards/tmoc/39/en?format=image");
put ("MOC/Phyrexian Horror", "https://api.scryfall.com/cards/tmoc/40/en?format=image");
put ("MOC/Replicated Ring", "https://api.scryfall.com/cards/tmoc/41/en?format=image");
put ("MOC/Servo", "https://api.scryfall.com/cards/tmoc/42/en?format=image");
put ("MOC/Shapeshifter", "https://api.scryfall.com/cards/tmoc/12/en?format=image");
put ("MOC/Sliver", "https://api.scryfall.com/cards/tmoc/2/en?format=image");
put ("MOC/Soldier", "https://api.scryfall.com/cards/tmoc/8/en?format=image");
put ("MOC/Spirit/1", "https://api.scryfall.com/cards/tmoc/13/en?format=image");
put ("MOC/Spirit/2", "https://api.scryfall.com/cards/tmoc/9/en?format=image");
put ("MOC/Squid", "https://api.scryfall.com/cards/tmoc/14/en?format=image");
put ("MOC/Emblem Teferi's Talent", "https://api.scryfall.com/cards/tmoc/44/en?format=image");
put ("MOC/Tentacle", "https://api.scryfall.com/cards/tmoc/15/en?format=image");
put ("MOC/Thopter", "https://api.scryfall.com/cards/tmoc/16/en?format=image");
put ("MOC/Vampire Knight", "https://api.scryfall.com/cards/tmoc/20/en?format=image");
put ("MOC/Warrior", "https://api.scryfall.com/cards/tmoc/10/en?format=image");
put ("MOC/Zombie Knight", "https://api.scryfall.com/cards/tmoc/21/en?format=image");
// generate supported sets
supportedSets.clear();
for (String cardName : this.keySet()) {

View file

@ -141,6 +141,8 @@
|Generate|EMBLEM:ONE|Koth, Fire of Resistance||Emblem Koth|KothFireOfResistanceEmblem|
|Generate|EMBLEM:MOM|Teferi Akosa of Zhalfir||Emblem Teferi|TeferiAkosaOfZhalfirEmblem|
|Generate|EMBLEM:MOM|Wrenn and Realmbreaker||Emblem Wrenn|WrennAndRealmbreakerEmblem|
|Generate|EMBLEM:MOC|Elspeth, Sun's Champion||Emblem Elspeth|ElspethSunsChampionEmblem|
|Generate|EMBLEM:MOC|Teferi's Talent||Emblem Teferi|TeferisTalentEmblem|
# Planes
|Generate|PLANE:PCA|Plane - Academy at Tolaria West|||AcademyAtTolariaWestPlane|
@ -2056,3 +2058,47 @@
|Generate|TOK:MOM|Vampire|||IxalanVampireToken|
|Generate|TOK:MOM|Warrior|||ValorsReachTagTeamToken|
|Generate|TOK:MOM|Zombie|||ZombieToken|
# MOC
|Generate|TOK:MOC|Angel|1||Angel33Token|
|Generate|TOK:MOC|Angel|2||AngelToken|
|Generate|TOK:MOC|Assassin|||QueenMarchesaAssassinToken|
|Generate|TOK:MOC|Beast|||BeastToken2|
|Generate|TOK:MOC|Bird|||BirdToken|
|Generate|TOK:MOC|Blood|||BloodToken|
|Generate|TOK:MOC|Butterfly|||ButterflyToken|
|Generate|TOK:MOC|Clue|||ClueArtifactToken|
|Generate|TOK:MOC|Construct|||StoneTrapIdolToken|
|Generate|TOK:MOC|Demon|||BelzenlokDemonToken|
|Generate|TOK:MOC|Eldrazi|||EldraziAnnihilatorToken|
|Generate|TOK:MOC|Elemental|||WildfireAwakenerToken|
|Generate|TOK:MOC|Elephant|||ElephantToken|
|Generate|TOK:MOC|Faerie|||FaerieToken|
|Generate|TOK:MOC|Feather|||FeatherToken|
|Generate|TOK:MOC|Food|||FoodToken|
|Generate|TOK:MOC|Goblin|||GoblinToken|
|Generate|TOK:MOC|Gold|||GoldToken|
|Generate|TOK:MOC|Golem|||GolemToken|
|Generate|TOK:MOC|Gremlin|||GremlinArtifactToken|
|Generate|TOK:MOC|Human|1||RedHumanToken|
|Generate|TOK:MOC|Human|2||HumanToken|
|Generate|TOK:MOC|Insect|||TheLocustGodInsectToken|
|Generate|TOK:MOC|Knight|||KnightToken|
|Generate|TOK:MOC|Kobolds of Kher Keep|||KherKeepKoboldToken|
|Generate|TOK:MOC|Myr|||MyrToken|
|Generate|TOK:MOC|Phyrexian Germ|||PhyrexianGermToken|
|Generate|TOK:MOC|Phyrexian Golem|||PhyrexianGolemToken|
|Generate|TOK:MOC|Phyrexian Horror|||PhyrexianRebirthHorrorToken|
|Generate|TOK:MOC|Replicated Ring|||ReplicatedRingToken|
|Generate|TOK:MOC|Servo|||ServoToken|
|Generate|TOK:MOC|Shapeshifter|||ShapeshifterBlueToken|
|Generate|TOK:MOC|Sliver|||SliverToken|
|Generate|TOK:MOC|Soldier|||SoldierToken|
|Generate|TOK:MOC|Spirit|1||SpiritBlueToken|
|Generate|TOK:MOC|Spirit|2||SpiritWhiteToken|
|Generate|TOK:MOC|Squid|||SquidToken|
|Generate|TOK:MOC|Tentacle|||TentacleToken|
|Generate|TOK:MOC|Thopter|||ThopterToken|
|Generate|TOK:MOC|Vampire Knight|||VampireKnightToken|
|Generate|TOK:MOC|Warrior|||WarriorToken|
|Generate|TOK:MOC|Zombie Knight|||ZombieKnightToken|

View file

@ -10,6 +10,8 @@ import mage.constants.Zone;
import mage.filter.StaticFilters;
import mage.game.command.Emblem;
import java.util.Arrays;
/**
*
* @author spjspj
@ -19,7 +21,8 @@ public final class ElspethSunsChampionEmblem extends Emblem {
// -7: You get an emblem with "Creatures you control get +2/+2 and have flying."
public ElspethSunsChampionEmblem() {
this.setName("Emblem Elspeth");
this.setExpansionSetCodeForImage("THS");
availableImageSetCodes = Arrays.asList("THS", "MOC");
Ability ability = new SimpleStaticAbility(
Zone.COMMAND,
new BoostControlledEffect(

View file

@ -23,7 +23,15 @@ public final class Angel33Token extends TokenImpl {
// Flying
this.addAbility(FlyingAbility.getInstance());
availableImageSetCodes = Arrays.asList("AFR", "SNC", "OGW");
availableImageSetCodes = Arrays.asList("AFR", "SNC", "OGW", "MOC");
}
@Override
public void setExpansionSetCodeForImage(String code) {
super.setExpansionSetCodeForImage(code);
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("MOC")) {
this.setTokenType(1);
}
}
public Angel33Token(final Angel33Token token) {

View file

@ -20,7 +20,7 @@ public final class AngelToken extends TokenImpl {
addAbility(FlyingAbility.getInstance());
availableImageSetCodes = Arrays.asList("APC", "AVR", "C14", "C15", "C18", "CON", "DDQ", "GTC",
"ISD", "M14", "MM3", "NEM", "OGW", "ORI", "PC2", "SCG", "SOI", "ZEN", "C20", "M21", "CMR", "AFC", "VOC", "2XM", "IMA", "PCA", "A25", "GN3", "ONC");
"ISD", "M14", "MM3", "NEM", "OGW", "ORI", "PC2", "SCG", "SOI", "ZEN", "C20", "M21", "CMR", "AFC", "VOC", "2XM", "IMA", "PCA", "A25", "GN3", "ONC", "MOC");
}
@Override
@ -29,6 +29,9 @@ public final class AngelToken extends TokenImpl {
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("ONC")) {
this.setTokenType(1);
}
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("MOC")) {
this.setTokenType(2);
}
}
public AngelToken(final AngelToken token) {

View file

@ -20,7 +20,7 @@ public final class BeastToken2 extends TokenImpl {
toughness = new MageInt(4);
availableImageSetCodes = Arrays.asList("C14", "C15", "C18", "C19", "CMA", "GVL", "DDD",
"E01", "ODY", "SCG", "ZEN", "C20", "ZNC", "CMR", "C21", "MH2", "MID", "IMA", "MM3", "DDS");
"E01", "ODY", "SCG", "ZEN", "C20", "ZNC", "CMR", "C21", "MH2", "MID", "IMA", "MM3", "DDS", "MOC");
}
public BeastToken2(final BeastToken2 token) {

View file

@ -17,25 +17,16 @@ import mage.filter.predicate.mageobject.AnotherPredicate;
import mage.game.Game;
import mage.players.Player;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
* @author LoneFox
*/
public final class BelzenlokDemonToken extends TokenImpl {
static final private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("DOM"));
}
public BelzenlokDemonToken() {
super("Demon Token", "6/6 black Demon creature token with flying, trample, and "
+ "\"At the beginning of your upkeep, sacrifice another creature. If you can't, this creature deals 6 damage to you.\"");
availableImageSetCodes = tokenImageSets;
cardType.add(CardType.CREATURE);
color.setBlack(true);
subtype.add(SubType.DEMON);
@ -44,6 +35,8 @@ public final class BelzenlokDemonToken extends TokenImpl {
addAbility(FlyingAbility.getInstance());
addAbility(TrampleAbility.getInstance());
addAbility(new BeginningOfUpkeepTriggeredAbility(new BelzenlokDemonTokenEffect(), TargetController.YOU, false));
availableImageSetCodes = Arrays.asList("DOM", "MOC");
}
public BelzenlokDemonToken(final BelzenlokDemonToken token) {
@ -54,14 +47,6 @@ public final class BelzenlokDemonToken extends TokenImpl {
public BelzenlokDemonToken copy() {
return new BelzenlokDemonToken(this);
}
@Override
public void setExpansionSetCodeForImage(String code) {
super.setExpansionSetCodeForImage(code);
if (getOriginalExpansionSetCode().equals("C14")) {
this.setTokenType(2);
}
}
}
class BelzenlokDemonTokenEffect extends OneShotEffect {

View file

@ -23,7 +23,7 @@ public final class BirdToken extends TokenImpl {
addAbility(FlyingAbility.getInstance());
availableImageSetCodes = Arrays.asList("BNG", "CSP", "JUD", "MM3", "RTR", "VMA", "ZEN",
"MH1", "C16", "C20", "M21", "ZNC", "KHC", "MH2", "IMA", "CM2", "DMU", "DMR", "ONC");
"MH1", "C16", "C20", "M21", "ZNC", "KHC", "MH2", "IMA", "CM2", "DMU", "DMR", "ONC", "MOC");
}
public BirdToken(final BirdToken token) {

View file

@ -31,7 +31,7 @@ public final class BloodToken extends TokenImpl {
ability.addCost(new SacrificeSourceCost().setText("Sacrifice this artifact"));
this.addAbility(ability);
availableImageSetCodes = Arrays.asList("VOW");
availableImageSetCodes = Arrays.asList("VOW", "MOC");
}
public BloodToken(final BloodToken token) {

View file

@ -20,6 +20,8 @@ public final class ButterflyToken extends TokenImpl {
power = new MageInt(1);
toughness = new MageInt(1);
addAbility(FlyingAbility.getInstance());
this.setExpansionSetCodeForImage("MOC");
}
public ButterflyToken(final ButterflyToken token) {

View file

@ -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", "CLB", "40K", "30A");
availableImageSetCodes = Arrays.asList("C18", "SOI", "MH2", "AFC", "MID", "VOC", "SLD", "2XM", "NCC", "CLB", "40K", "30A", "MOC");
}
@Override

View file

@ -15,7 +15,7 @@ import java.util.Arrays;
public final class EldraziAnnihilatorToken extends TokenImpl {
public EldraziAnnihilatorToken() {
super("Eldrazi Token", "7/7 colorless Eldrazi creature token");
super("Eldrazi Token", "7/7 colorless Eldrazi creature token with annihilator 1");
cardType.add(CardType.CREATURE);
subtype.add(SubType.ELDRAZI);
setExpansionSetCodeForImage("PCA");
@ -23,7 +23,7 @@ public final class EldraziAnnihilatorToken extends TokenImpl {
toughness = new MageInt(7);
addAbility(new AnnihilatorAbility(1));
availableImageSetCodes = Arrays.asList("PCA");
availableImageSetCodes = Arrays.asList("PCA", "MOC");
}
public EldraziAnnihilatorToken(final EldraziAnnihilatorToken token) {

View file

@ -20,7 +20,7 @@ public final class ElephantToken extends TokenImpl {
toughness = new MageInt(3);
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", "DMC", "DMR", "ONC");
"EMA", "INV", "JUD", "MM2", "ODY", "VMA", "WWK", "MH1", "CMR", "C21", "MIC", "NEC", "2XM", "NCC", "MM3", "DDS", "DMC", "DMR", "ONC", "MOC");
}
public ElephantToken(final ElephantToken token) {

View file

@ -21,7 +21,7 @@ public final class FaerieToken extends TokenImpl {
toughness = new MageInt(1);
this.addAbility(FlyingAbility.getInstance());
availableImageSetCodes = Arrays.asList("ELD", "NCC", "BRC");
availableImageSetCodes = Arrays.asList("ELD", "NCC", "BRC", "MOC");
}
public FaerieToken(final FaerieToken token) {

View file

@ -9,6 +9,8 @@ import mage.constants.CardType;
import mage.constants.SubType;
import mage.filter.FilterCard;
import java.util.Arrays;
public final class FeatherToken extends TokenImpl {
private static final FilterCard filter = new FilterCard("Phoenix card");
@ -19,7 +21,6 @@ public final class FeatherToken extends TokenImpl {
public FeatherToken() {
super("Feather", "red artifact token named Feather with \"{1}, Sacrifice Feather: Return target Phoenix card from your graveyard to the battlefield tapped.\"");
this.cardType.add(CardType.ARTIFACT);
this.color.setRed(true);
Ability ability = new SimpleActivatedAbility(
@ -27,7 +28,8 @@ public final class FeatherToken extends TokenImpl {
);
ability.addCost(new SacrificeSourceCost());
this.addAbility(ability);
setOriginalExpansionSetCode("IKO");
availableImageSetCodes = Arrays.asList("IKO", "MOC");
}
private FeatherToken(final FeatherToken token) {

View file

@ -11,9 +11,7 @@ import mage.constants.SubType;
import mage.constants.Zone;
import mage.util.RandomUtil;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
* @author jmharmon
@ -21,8 +19,6 @@ import java.util.List;
public final class FoodToken extends TokenImpl {
static final private List<String> tokenImageSets = new ArrayList<>();
public FoodToken() {
super("Food Token", "Food token");
cardType.add(CardType.ARTIFACT);
@ -36,7 +32,7 @@ public final class FoodToken extends TokenImpl {
ability.addCost(cost);
this.addAbility(ability);
availableImageSetCodes = Arrays.asList("ELD", "C21", "MH2", "NCC");
availableImageSetCodes = Arrays.asList("ELD", "C21", "MH2", "NCC", "MOC");
}
@Override

View file

@ -34,7 +34,7 @@ public final class GoblinToken extends TokenImpl {
"MMA", "M15", "C14", "KTK", "EVG", "DTK", "ORI", "DDG", "DDN",
"MM3", "EMA", "DOM", "RNA", "WAR", "MH1", "TSR", "MH2", "AFR",
"NEC", "M19", "CM2", "PCA", "DD1", "DDS", "DDT", "A25", "GRN",
"GK1", "DMU", "DMR", "ONC");
"GK1", "DMU", "DMR", "ONC", "MOC");
}
public GoblinToken(final GoblinToken token) {

View file

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

View file

@ -19,7 +19,7 @@ public final class GolemToken extends TokenImpl {
power = new MageInt(3);
toughness = new MageInt(3);
availableImageSetCodes = Arrays.asList("MM2", "SOM", "MH1", "M20", "CMR", "2XM");
availableImageSetCodes = Arrays.asList("MM2", "SOM", "MH1", "M20", "CMR", "2XM", "MOC");
}
public GolemToken(final GolemToken token) {

View file

@ -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", "CLB", "DMC", "ONC", "30A"));
availableImageSetCodes.addAll(Arrays.asList("DKA", "AVR", "FNMP", "RNA", "ELD", "C19", "C20", "MID", "VOW", "NCC", "DDQ", "CLB", "DMC", "ONC", "30A", "MOC"));
}
public HumanToken(final HumanToken token) {
@ -41,5 +41,8 @@ public final class HumanToken extends TokenImpl {
if (getOriginalExpansionSetCode().equals("AVR")) {
this.setTokenType(2);
}
if (getOriginalExpansionSetCode().equals("MOC")) {
this.setTokenType(2);
}
}
}

View file

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

View file

@ -23,7 +23,7 @@ public final class KnightToken extends TokenImpl {
toughness = new MageInt(2);
this.addAbility(VigilanceAbility.getInstance());
availableImageSetCodes = Arrays.asList("C15", "CMA", "ORI", "RTR", "M19", "ELD", "M21", "AFC", "MIC", "DOM", "2X2", "DMC");
availableImageSetCodes = Arrays.asList("C15", "CMA", "ORI", "RTR", "M19", "ELD", "M21", "AFC", "MIC", "DOM", "2X2", "DMC", "MOC");
}
public KnightToken(final KnightToken token) {

View file

@ -16,7 +16,7 @@ public final class MyrToken extends TokenImpl {
power = new MageInt(1);
toughness = new MageInt(1);
availableImageSetCodes = Arrays.asList("C14", "C16", "C18", "DST", "MM2", "MRD", "SOM", "MH1", "C21", "NEC", "2XM", "BBD", "DDU", "CM2", "BRC", "ONC");
availableImageSetCodes = Arrays.asList("C14", "C16", "C18", "DST", "MM2", "MRD", "SOM", "MH1", "C21", "NEC", "2XM", "BBD", "DDU", "CM2", "BRC", "ONC", "MOC");
}
public MyrToken(final MyrToken token) {

View file

@ -20,7 +20,7 @@ public final class PhyrexianGermToken extends TokenImpl {
power = new MageInt(0);
toughness = new MageInt(0);
availableImageSetCodes = Arrays.asList("C14", "C15", "C16", "MBS", "MM2", "PC2", "MH2", "NEC", "2XM", "CM2", "CMA", "PCA", "ONC");
availableImageSetCodes = Arrays.asList("C14", "C15", "C16", "MBS", "MM2", "PC2", "MH2", "NEC", "2XM", "CM2", "CMA", "PCA", "ONC", "MOC");
}
@Override

View file

@ -20,7 +20,7 @@ public final class PhyrexianGolemToken extends TokenImpl {
power = new MageInt(3);
toughness = new MageInt(3);
availableImageSetCodes = Arrays.asList("MM2", "NPH", "SOM", "MH1", "M20", "CMR", "MM3", "2X2", "ONE");
availableImageSetCodes = Arrays.asList("MM2", "NPH", "SOM", "MH1", "M20", "CMR", "MM3", "2X2", "ONE", "MOC");
}
public PhyrexianGolemToken(final PhyrexianGolemToken token) {

View file

@ -24,7 +24,7 @@ public final class PhyrexianRebirthHorrorToken extends TokenImpl {
this.power = new MageInt(power);
this.toughness = new MageInt(toughness);
availableImageSetCodes = Arrays.asList("C16", "C18", "C19", "MBS", "CMR", "BRC", "ONC");
availableImageSetCodes = Arrays.asList("C16", "C18", "C19", "MBS", "CMR", "BRC", "ONC", "MOC");
}
public PhyrexianRebirthHorrorToken(final PhyrexianRebirthHorrorToken token) {

View file

@ -25,7 +25,7 @@ public final class QueenMarchesaAssassinToken extends TokenImpl {
addAbility(DeathtouchAbility.getInstance());
addAbility(HasteAbility.getInstance());
availableImageSetCodes = Arrays.asList("CN2");
availableImageSetCodes = Arrays.asList("CN2", "MOC");
}
public QueenMarchesaAssassinToken(final QueenMarchesaAssassinToken token) {

View file

@ -4,7 +4,6 @@ package mage.game.permanent.token;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.MageInt;
import mage.ObjectColor;
import java.util.Arrays;
@ -23,7 +22,7 @@ public final class RedHumanToken extends TokenImpl {
this.power = new MageInt(1);
this.toughness = new MageInt(1);
availableImageSetCodes = Arrays.asList("AVR", "EMN", "VOW");
availableImageSetCodes = Arrays.asList("AVR", "EMN", "VOW", "MOC");
}
@Override
@ -33,6 +32,9 @@ public final class RedHumanToken extends TokenImpl {
if (getOriginalExpansionSetCode().equals("AVR")) {
this.setTokenType(1);
}
if (getOriginalExpansionSetCode().equals("MOC")) {
this.setTokenType(1);
}
}
public RedHumanToken(final RedHumanToken token) {

View file

@ -18,7 +18,7 @@ public final class ReplicatedRingToken extends TokenImpl {
this.addAbility(new AnyColorManaAbility());
availableImageSetCodes = Arrays.asList("KHM");
availableImageSetCodes = Arrays.asList("KHM", "MOC");
}

View file

@ -20,7 +20,7 @@ public final class ServoToken extends TokenImpl {
power = new MageInt(1);
toughness = new MageInt(1);
availableImageSetCodes = Arrays.asList("C18", "KLD", "WAR", "KHC", "AFC", "2XM", "BRC");
availableImageSetCodes = Arrays.asList("C18", "KLD", "WAR", "KHC", "AFC", "2XM", "BRC", "MOC");
}
@Override

View file

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

View file

@ -19,7 +19,7 @@ public final class SliverToken extends TokenImpl {
subtype.add(SubType.SLIVER);
power = new MageInt(1);
toughness = new MageInt(1);
availableImageSetCodes.addAll(Arrays.asList("M14", "M15"));
availableImageSetCodes.addAll(Arrays.asList("M14", "M15", "MOC"));
}
public SliverToken(final SliverToken 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",
"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", "CLB", "2X2", "DMU", "GN3", "40K", "ONC", "30A");
"DOM", "MH1", "M20", "C20", "M21", "CMR", "KHC", "TSR", "2XM", "MED", "M19", "MD1", "A25", "CLB", "2X2", "DMU", "GN3", "40K", "ONC", "30A", "MOC");
}
public SoldierToken(final SoldierToken token) {

View file

@ -21,10 +21,9 @@ public final class SpiritBlueToken extends TokenImpl {
color.setBlue(true);
power = new MageInt(1);
toughness = new MageInt(1);
setTokenType(2);
addAbility(FlyingAbility.getInstance());
availableImageSetCodes = Arrays.asList("AVR");
availableImageSetCodes = Arrays.asList("AVR", "MOC");
}
@Override
@ -33,6 +32,9 @@ public final class SpiritBlueToken extends TokenImpl {
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("AVR")) {
setTokenType(1);
}
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("MOC")) {
setTokenType(1);
}
}
public SpiritBlueToken(final SpiritBlueToken token) {

View file

@ -24,7 +24,7 @@ public final class SpiritWhiteToken extends TokenImpl {
availableImageSetCodes = Arrays.asList("AVR", "C14", "CNS", "DDC", "DDK", "FRF", "ISD", "KTK", "M15", "MM2", "SHM",
"SOI", "EMA", "C16", "MM3", "CMA", "E01", "RAV", "EMN", "M20", "C19", "C20", "CMR", "KHM",
"MID", "VOW", "UMA", "BBD", "IMA", "CM2", "MD1", "DVD", "DDQ", "CN2", "A25", "GK2", "2X2", "ONC");
"MID", "VOW", "UMA", "BBD", "IMA", "CM2", "MD1", "DVD", "DDQ", "CN2", "A25", "GK2", "2X2", "ONC", "MOC");
}
@Override
@ -48,6 +48,9 @@ public final class SpiritWhiteToken extends TokenImpl {
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("2X2")) {
setTokenType(2);
}
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("MOC")) {
setTokenType(2);
}
}
public SpiritWhiteToken(final SpiritWhiteToken token) {

View file

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

View file

@ -23,7 +23,7 @@ public final class StoneTrapIdolToken extends TokenImpl {
toughness = new MageInt(12);
addAbility(TrampleAbility.getInstance());
availableImageSetCodes = Arrays.asList("WWK", "C18");
availableImageSetCodes = Arrays.asList("WWK", "C18", "MOC");
}
public StoneTrapIdolToken(final StoneTrapIdolToken token) {

View file

@ -19,7 +19,7 @@ public final class TentacleToken extends TokenImpl {
power = new MageInt(1);
toughness = new MageInt(1);
availableImageSetCodes = Arrays.asList("THB", "NCC");
availableImageSetCodes = Arrays.asList("THB", "NCC", "MOC");
}
private TentacleToken(final TentacleToken token) {

View file

@ -5,7 +5,6 @@ import mage.abilities.keyword.FlyingAbility;
import mage.abilities.keyword.HasteAbility;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.util.RandomUtil;
import java.util.Arrays;
@ -25,7 +24,7 @@ public final class TheLocustGodInsectToken extends TokenImpl {
addAbility(FlyingAbility.getInstance());
addAbility(HasteAbility.getInstance());
availableImageSetCodes = Arrays.asList("HOU", "C20");
availableImageSetCodes = Arrays.asList("HOU", "C20", "MOC");
}
@Override

View file

@ -24,7 +24,7 @@ public final class ThopterToken extends TokenImpl {
toughness = new MageInt(1);
this.addAbility(FlyingAbility.getInstance());
availableImageSetCodes = Arrays.asList("ALA", "C16", "C18", "2XM", "BRC");
availableImageSetCodes = Arrays.asList("ALA", "C16", "C18", "2XM", "BRC", "MOC");
}
@Override

View file

@ -16,6 +16,8 @@ public final class VampireKnightToken extends TokenImpl {
power = new MageInt(1);
toughness = new MageInt(1);
addAbility(LifelinkAbility.getInstance());
this.setOriginalExpansionSetCode("MOC");
}
public VampireKnightToken(final VampireKnightToken token) {

View file

@ -22,7 +22,7 @@ public final class WarriorToken extends TokenImpl {
subtype.add(SubType.WARRIOR);
power = new MageInt(1);
toughness = new MageInt(1);
availableImageSetCodes.addAll(Arrays.asList("KTK", "DTK", "BBD"));
availableImageSetCodes.addAll(Arrays.asList("KTK", "DTK", "BBD", "MOC"));
}
public WarriorToken(final WarriorToken token) {

View file

@ -13,7 +13,7 @@ public final class ZombieKnightToken extends TokenImpl {
static final private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("DOM", "DMC"));
tokenImageSets.addAll(Arrays.asList("DOM", "DMC", "MOC"));
}
public ZombieKnightToken(){