Merge pull request #4926 from magefree/dom_token

Add image code for DOM tokens
This commit is contained in:
LevelX2 2018-05-10 07:00:14 +02:00 committed by GitHub
commit a227bd9e1c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
21 changed files with 204 additions and 11 deletions

View file

@ -345,6 +345,17 @@
|Generate|TOK:C16|Thopter||
|Generate|TOK:C16|Worm||
|Generate|TOK:C16|Zombie||
|Generate|TOK:C17|Bat||
|Generate|TOK:C17|Cat||
|Generate|TOK:C17|Cat Dragon|||WasitoraCatDragonToken|
|Generate|TOK:C17|Cat Warrior||
|Generate|TOK:C17|Dragon|1||DragonToken|
|Generate|TOK:C17|Dragon|2||UtavaraHellkiteDragonToken|
|Generate|TOK:C17|Eldrazi Spawn||
|Generate|TOK:C17|Gold||
|Generate|TOK:C17|Rat|||DeathtouchRatToken|
|Generate|TOK:C17|Vampire|||EdgarMarkovToken|
|Generate|TOK:C17|Zombie||
|Generate|TOK:CHK|Dragon Spirit|||TatsumaDragonToken|
|Generate|TOK:CHK|Elemental|||SeedGuardianToken|
|Generate|TOK:CHK|Illusion|||MelokuTheCloudedMirrorToken|
@ -502,6 +513,20 @@
|Generate|TOK:DKA|Vampire|||SorinLordOfInnistradVampireToken|
|Generate|TOK:DKA|Wolf|||WolfToken|
|Generate|TOK:DKA|Zombie|||ZombieToken|
|Generate|TOK:DOM|Cleric|||BelzenlokClericToken|
|Generate|TOK:DOM|Construct|||KarnConstructToken|
|Generate|TOK:DOM|Demon|||BelzenlokDemonToken|
|Generate|TOK:DOM|Elemental|||ValdukElementalToken|
|Gererate|TOK:DOM|Goblin||
|Generate|TOK:DOM|Karox Bladewing|||KaroxBladewingDragonToken|
|Generate|TOK:DOM|Knight|1|
|Generate|TOK:DOM|Knight|2|
|Generate|TOK:DOM|Nightmare Horror|||ChainersTormentNightmareToken|
|Generate|TOK:DOM|Saproling|1|
|Generate|TOK:DOM|Saproling|2|
|Generate|TOK:DOM|Saproling|3|
|Generate|TOK:DOM|Soldier||
|Generate|TOK:DOM|Zombie Knight||
|Generate|TOK:DRB|Saproling|||SaprolingToken|
|Generate|TOK:DST|Beast|||BeastToken|
|Generate|TOK:DST|Elemental|1||WandOfTheElementsFirstToken|

View file

@ -1,14 +1,24 @@
package mage.game.permanent.token;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import mage.MageInt;
import mage.abilities.keyword.FlyingAbility;
import mage.constants.CardType;
import mage.constants.SubType;
public class BatToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("MMA", "C17"));
}
public BatToken() {
super("Bat", "1/1 black Bat creature token with flying");
availableImageSetCodes = tokenImageSets;
cardType.add(CardType.CREATURE);
color.setBlack(true);
subtype.add(SubType.BAT);

View file

@ -27,6 +27,9 @@
*/
package mage.game.permanent.token;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import mage.MageInt;
import mage.constants.CardType;
import mage.constants.SubType;
@ -37,8 +40,14 @@ import mage.constants.SubType;
*/
public class BelzenlokClericToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("DOM"));
}
public BelzenlokClericToken() {
super("Cleric", "0/1 black Cleric creature token");
availableImageSetCodes = tokenImageSets;
cardType.add(CardType.CREATURE);
subtype.add(SubType.CLERIC);
color.setBlack(true);

View file

@ -27,6 +27,9 @@
*/
package mage.game.permanent.token;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import mage.MageInt;
import mage.abilities.Ability;
import mage.abilities.common.BeginningOfUpkeepTriggeredAbility;
@ -51,9 +54,15 @@ import mage.game.permanent.Permanent;
*/
public class BelzenlokDemonToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("DOM"));
}
public BelzenlokDemonToken() {
super("Demon", "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);

View file

@ -44,7 +44,7 @@ public class CatToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("SOM", "M13", "M14", "C14", "C15"));
tokenImageSets.addAll(Arrays.asList("SOM", "M13", "M14", "C14", "C15", "C17"));
}
public CatToken() {

View file

@ -27,6 +27,9 @@
*/
package mage.game.permanent.token;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import mage.constants.CardType;
import mage.abilities.keyword.ForestwalkAbility;
import mage.constants.SubType;
@ -37,8 +40,15 @@ import mage.constants.SubType;
*/
public class CatWarriorToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("PLC", "C17"));
}
public CatWarriorToken() {
super("Cat Warrior", "2/2 green Cat Warrior creature token with forestwalk");
availableImageSetCodes = tokenImageSets;
this.setOriginalExpansionSetCode("PLC");
this.getPower().modifyBaseValue(2);
this.getToughness().modifyBaseValue(2);

View file

@ -27,6 +27,9 @@
*/
package mage.game.permanent.token;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.MageInt;
@ -37,12 +40,23 @@ import mage.MageInt;
*/
public class ChainersTormentNightmareToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("DOM"));
}
public ChainersTormentNightmareToken() { this(0); };
public ChainersTormentNightmareToken(int xValue) {
super("Nightmare", "X/X black Nightmare artifact creature token");
super("Nightmare Horror", "X/X black Nightmare Horror creature token");
availableImageSetCodes = tokenImageSets;
setOriginalExpansionSetCode("DOM");
cardType.add(CardType.CREATURE);
subtype.add(SubType.NIGHTMARE);
subtype.add(SubType.HORROR);
color.setBlack(true);
power = new MageInt(xValue);
toughness = new MageInt(xValue);
}

View file

@ -27,6 +27,9 @@
*/
package mage.game.permanent.token;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import mage.constants.CardType;
import mage.MageInt;
import mage.abilities.keyword.DeathtouchAbility;
@ -37,10 +40,16 @@ import mage.constants.SubType;
* @author Saga
*/
public class DeathtouchRatToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("C17"));
}
public DeathtouchRatToken() {
super("Rat", "1/1 black Rat creature token with deathtouch");
this.setExpansionSetCodeForImage("C17");
availableImageSetCodes = tokenImageSets;
this.cardType.add(CardType.CREATURE);
this.color.setBlack(true);
this.subtype.add(SubType.RAT);

View file

@ -45,7 +45,7 @@ public class DragonToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("DTK", "MMA", "ALA", "MM3"));
tokenImageSets.addAll(Arrays.asList("DTK", "MMA", "ALA", "MM3", "C17"));
}
public DragonToken() {

View file

@ -27,6 +27,9 @@
*/
package mage.game.permanent.token;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.MageInt;
@ -37,8 +40,15 @@ import mage.MageInt;
*/
public class EdgarMarkovToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("C17"));
}
public EdgarMarkovToken() {
super("Vampire", "1/1 black Vampire creature token");
availableImageSetCodes = tokenImageSets;
setExpansionSetCodeForImage("C17");
cardType.add(CardType.CREATURE);
color.setBlack(true);
subtype.add(SubType.VAMPIRE);

View file

@ -49,7 +49,7 @@ public class EldraziSpawnToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("ROE", "MM2", "DDP"));
tokenImageSets.addAll(Arrays.asList("ROE", "MM2", "DDP", "C17"));
}
public EldraziSpawnToken() {
@ -62,8 +62,8 @@ public class EldraziSpawnToken extends TokenImpl {
addAbility(new SimpleManaAbility(Zone.BATTLEFIELD, Mana.ColorlessMana(1), new SacrificeSourceCost()));
availableImageSetCodes = tokenImageSets;
// Get one of the three possible token images
this.setTokenType(RandomUtil.nextInt(3) + 1);
// Get one of the four possible token images
this.setTokenType(RandomUtil.nextInt(4) + 1);
}
public EldraziSpawnToken(final EldraziSpawnToken token) {
@ -73,4 +73,4 @@ public class EldraziSpawnToken extends TokenImpl {
public EldraziSpawnToken copy() {
return new EldraziSpawnToken(this);
}
}
}

View file

@ -44,7 +44,8 @@ public class GoblinToken extends TokenImpl {
static {
tokenImageSets.addAll(Arrays.asList("10E", "ALA", "SOM", "M10", "NPH", "M13", "RTR",
"MMA", "M15", "C14", "KTK", "EVG", "DTK", "ORI", "DDG", "DDN", "DD3EVG", "MM2", "MM3", "EMA", "C16"));
"MMA", "M15", "C14", "KTK", "EVG", "DTK", "ORI", "DDG", "DDN", "DD3EVG", "MM2",
"MM3", "EMA", "C16", "DOM"));
}
public GoblinToken() {

View file

@ -27,6 +27,9 @@
*/
package mage.game.permanent.token;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import static javax.management.Query.value;
import mage.constants.CardType;
import mage.constants.SubType;
@ -52,12 +55,18 @@ public class KarnConstructToken extends TokenImpl {
filter.add(new CardTypePredicate(CardType.ARTIFACT));
}
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("DOM"));
}
public KarnConstructToken() {
this("DOM");
}
public KarnConstructToken(String setCode) {
super("Construct", "0/0 colorless Construct artifact creature token with \"This creature gets +1/+1 for each artifact you control.\"");
availableImageSetCodes = tokenImageSets;
this.setOriginalExpansionSetCode(setCode);
cardType.add(CardType.ARTIFACT);
cardType.add(CardType.CREATURE);

View file

@ -27,6 +27,9 @@
*/
package mage.game.permanent.token;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import mage.abilities.keyword.FlyingAbility;
import mage.constants.CardType;
import mage.constants.SubType;
@ -38,14 +41,21 @@ import mage.constants.SuperType;
*/
public class KaroxBladewingDragonToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("DOM"));
}
public KaroxBladewingDragonToken() {
super("Karox Bladewing", "legendary 4/4 red Dragon creature token with flying", 4, 4);
availableImageSetCodes = tokenImageSets;
this.setOriginalExpansionSetCode("DOM");
this.addSuperType(SuperType.LEGENDARY);
this.cardType.add(CardType.CREATURE);
this.subtype.add(SubType.DRAGON);
this.color.setRed(true);
this.addAbility(FlyingAbility.getInstance());
}

View file

@ -7,6 +7,7 @@ import mage.MageInt;
import mage.abilities.keyword.VigilanceAbility;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.util.RandomUtil;
/**
*
@ -25,6 +26,9 @@ public class KnightToken extends TokenImpl {
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("C15")) {
setTokenType(2);
}
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("DOM")) {
this.setTokenType(RandomUtil.nextInt(2) + 1);
}
cardType.add(CardType.CREATURE);
color.setWhite(true);
subtype.add(SubType.KNIGHT);

View file

@ -64,7 +64,9 @@ public class SaprolingToken extends TokenImpl {
"CMA",
"VMA", // 2 different token, one with DIFFERENT stats, "Saproling Burst" create different token, see https://scryfall.com/card/tvma/12
"E02",
"RIX"));
"RIX",
"DOM" // 3 different token images
));
}
public SaprolingToken() {
@ -82,6 +84,9 @@ public class SaprolingToken extends TokenImpl {
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("C16")) {
this.setTokenType(RandomUtil.nextInt(2) + 1);
}
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("DOM")) {
this.setTokenType(RandomUtil.nextInt(3) + 1);
}
cardType.add(CardType.CREATURE);
color.setGreen(true);
subtype.add(SubType.SAPROLING);

View file

@ -45,7 +45,7 @@ public class SoldierToken extends TokenImpl {
static {
tokenImageSets.addAll(Arrays.asList("10E", "M15", "C14", "ORI", "ALA", "DDF", "THS", "M12", "M13", "MM2", "MMA", "RTR",
"SOM", "DDO", "M10", "ORI", "EMN", "EMA", "CN2", "C16", "MM3", "E01"));
"SOM", "DDO", "M10", "ORI", "EMN", "EMA", "CN2", "C16", "MM3", "E01", "DOM"));
}
public SoldierToken() {

View file

@ -27,6 +27,9 @@
*/
package mage.game.permanent.token;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.MageInt;
@ -37,9 +40,16 @@ import mage.abilities.keyword.FlyingAbility;
* @author spjspj
*/
public class UtvaraHellkiteDragonToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("C17"));
}
public UtvaraHellkiteDragonToken() {
super("Dragon", "6/6 red Dragon creature token with flying");
availableImageSetCodes = tokenImageSets;
setExpansionSetCodeForImage("C17");
cardType.add(CardType.CREATURE);
color.setRed(true);
subtype.add(SubType.DRAGON);

View file

@ -27,6 +27,9 @@
*/
package mage.game.permanent.token;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.MageInt;
@ -39,12 +42,18 @@ import mage.abilities.keyword.TrampleAbility;
*/
public class ValdukElementalToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("DOM"));
}
public ValdukElementalToken() {
this("DOM");
}
public ValdukElementalToken(String setCode) {
super("Elemental", "3/1 red Elemental creature token with trample and haste");
availableImageSetCodes = tokenImageSets;
cardType.add(CardType.CREATURE);
color.setRed(true);
subtype.add(SubType.ELEMENTAL);

View file

@ -27,6 +27,9 @@
*/
package mage.game.permanent.token;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import mage.constants.CardType;
import mage.constants.SubType;
import mage.MageInt;
@ -38,8 +41,17 @@ import mage.abilities.keyword.FlyingAbility;
*/
public class WasitoraCatDragonToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("C17"));
}
public WasitoraCatDragonToken() {
super("Cat Dragon", "3/3 black, red, and green Cat Dragon creature token with flying");
availableImageSetCodes = tokenImageSets;
setOriginalExpansionSetCode("C17");
cardType.add(CardType.CREATURE);
this.subtype.add(SubType.CAT);

View file

@ -1,5 +1,35 @@
/*
* Copyright 2010 BetaSteward_at_googlemail.com. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
* permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this list of
* conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice, this list
* of conditions and the following disclaimer in the documentation and/or other materials
* provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY BetaSteward_at_googlemail.com ``AS IS'' AND ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BetaSteward_at_googlemail.com OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* The views and conclusions contained in the software and documentation are those of the
* authors and should not be interpreted as representing official policies, either expressed
* or implied, of BetaSteward_at_googlemail.com.
*/
package mage.game.permanent.token;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import mage.MageInt;
import mage.ObjectColor;
import mage.abilities.keyword.MenaceAbility;
@ -8,9 +38,16 @@ import mage.constants.SubType;
public class ZombieKnightToken extends TokenImpl {
final static private List<String> tokenImageSets = new ArrayList<>();
static {
tokenImageSets.addAll(Arrays.asList("DOM"));
}
public ZombieKnightToken(){
super("Zombie Knight", "a 2/2 black Zombie Knight creature token with menace");
color.addColor(ObjectColor.BLACK);
availableImageSetCodes = tokenImageSets;
setOriginalExpansionSetCode("DOM");
color.setBlack(true);
cardType.add(CardType.CREATURE);
subtype.add(SubType.ZOMBIE, SubType.KNIGHT);
addAbility(new MenaceAbility());