mirror of
https://github.com/correl/mage.git
synced 2024-11-25 03:00:11 +00:00
Added token images for SNC (#8946)
* Fixed knight token images from the DOM set not displaying * Fixed the name reference of RNA's thopter token * Fixed misspelling regarding Tibalt, Cosmic Impostor's emblem token causing it not to show in game * Updated Faerie Dragon token to be present in game * Removed redundant code regarding KLD constructs and improved thematic consistency * Added Scryfall token download links for DTK * Added support for and assigned SNC token images
This commit is contained in:
parent
758f1cb896
commit
4a167b3a17
17 changed files with 88 additions and 20 deletions
|
@ -131,11 +131,8 @@ public class ScryfallImageSupportTokens {
|
|||
//KLD
|
||||
put("KLD/Beast", "https://api.scryfall.com/cards/tkld/1/en?format=image");
|
||||
put("KLD/Emblem Chandra", "https://api.scryfall.com/cards/tkld/10/en?format=image");
|
||||
// same construct images uses for different classes, so KLD have 4 instead 2 tokens
|
||||
put("KLD/Construct/1", "https://api.scryfall.com/cards/tkld/2/en?format=image");
|
||||
put("KLD/Construct/2", "https://api.scryfall.com/cards/tkld/3/en?format=image");
|
||||
put("KLD/Construct/3", "https://api.scryfall.com/cards/tkld/2/en?format=image");
|
||||
put("KLD/Construct/4", "https://api.scryfall.com/cards/tkld/3/en?format=image");
|
||||
put("KLD/Emblem Dovin", "https://api.scryfall.com/cards/tkld/12/en?format=image");
|
||||
put("KLD/Emblem Nissa", "https://api.scryfall.com/cards/tkld/11/en?format=image");
|
||||
put("KLD/Servo/1", "https://api.scryfall.com/cards/tkld/4/en?format=image");
|
||||
|
@ -520,7 +517,7 @@ public class ScryfallImageSupportTokens {
|
|||
put("KHM/Troll Warrior", "https://api.scryfall.com/cards/tkhm/16/en?format=image");
|
||||
put("KHM/Zombie Berserker", "https://api.scryfall.com/cards/tkhm/9/en?format=image");
|
||||
put("KHM/Emblem Kaya the Inexorable", "https://api.scryfall.com/cards/tkhm/20/en?format=image");
|
||||
put("KHM/Emblem Tibalt Cosmic Imposter", "https://api.scryfall.com/cards/tkhm/21/en?format=image");
|
||||
put("KHM/Emblem Tibalt, Cosmic Impostor", "https://api.scryfall.com/cards/tkhm/21/en?format=image");
|
||||
put("KHM/Emblem Tyvar Kell", "https://api.scryfall.com/cards/tkhm/22/en?format=image");
|
||||
|
||||
// KHC
|
||||
|
@ -842,6 +839,33 @@ public class ScryfallImageSupportTokens {
|
|||
put ("2XM/Phyrexian Wurm/1", "https://api.scryfall.com/cards/t2xm/29/en?format=image");
|
||||
put ("2XM/Phyrexian Wurm/2", "https://api.scryfall.com/cards/t2xm/30/en?format=image");
|
||||
|
||||
// DTK
|
||||
put ("DTK/Djinn Monk", "https://api.scryfall.com/cards/tdtk/2/en?format=image");
|
||||
put ("DTK/Dragon", "https://api.scryfall.com/cards/tdtk/5/en?format=image");
|
||||
put ("DTK/Goblin", "https://api.scryfall.com/cards/tdtk/6/en?format=image");
|
||||
put ("DTK/Emblem Narset", "https://api.scryfall.com/cards/tdtk/8/en?format=image");
|
||||
put ("DTK/Warrior", "https://api.scryfall.com/cards/tdtk/1/en?format=image");
|
||||
put ("DTK/Zombie", "https://api.scryfall.com/cards/tdtk/3/en?format=image");
|
||||
put ("DTK/Zombie Horror", "https://api.scryfall.com/cards/tdtk/4/en?format=image");
|
||||
|
||||
// SNC
|
||||
put ("SNC/Angel", "https://api.scryfall.com/cards/tsnc/2/en?format=image");
|
||||
put ("SNC/Cat", "https://api.scryfall.com/cards/tsnc/9/en?format=image");
|
||||
put ("SNC/Citizen", "https://api.scryfall.com/cards/tsnc/12/en?format=image");
|
||||
put ("SNC/Devil", "https://api.scryfall.com/cards/tsnc/8/en?format=image");
|
||||
put ("SNC/Dog", "https://api.scryfall.com/cards/tsnc/10/en?format=image");
|
||||
put ("SNC/Fish", "https://api.scryfall.com/cards/tsnc/4/en?format=image");
|
||||
put ("SNC/Ogre Warrior", "https://api.scryfall.com/cards/tsnc/6/en?format=image");
|
||||
put ("SNC/Rhino Warrior", "https://api.scryfall.com/cards/tsnc/11/en?format=image");
|
||||
put ("SNC/Rogue", "https://api.scryfall.com/cards/tsnc/7/en?format=image");
|
||||
put ("SNC/Spirit", "https://api.scryfall.com/cards/tsnc/3/en?format=image");
|
||||
put ("SNC/Treasure/1", "https://api.scryfall.com/cards/tsnc/13/en?format=image");
|
||||
put ("SNC/Treasure/2", "https://api.scryfall.com/cards/tsnc/14/en?format=image");
|
||||
put ("SNC/Treasure/3", "https://api.scryfall.com/cards/tsnc/15/en?format=image");
|
||||
put ("SNC/Treasure/4", "https://api.scryfall.com/cards/tsnc/16/en?format=image");
|
||||
put ("SNC/Treasure/5", "https://api.scryfall.com/cards/tsnc/17/en?format=image");
|
||||
put ("SNC/Wizard", "https://api.scryfall.com/cards/tsnc/5/en?format=image");
|
||||
|
||||
// generate supported sets
|
||||
supportedSets.clear();
|
||||
for (String cardName : this.keySet()) {
|
||||
|
|
|
@ -104,7 +104,7 @@
|
|||
|Generate|EMBLEM:M21|Garruk, Unleashed||Emblem Garruk|GarrukUnleashedEmblem|
|
||||
|Generate|EMBLEM:M21|Liliana, Waker of the Dead||Emblem Liliana|LilianaWakerOfTheDeadEmblem|
|
||||
|Generate|EMBLEM:KHM|Kaya the Inexorable||Emblem Kaya|KayaTheInexorableEmblem|
|
||||
|Generate|EMBLEM:KHM|Tibalt Cosmic Imposter||Emblem Tibalt|TibaltCosmicImposterEmblem|
|
||||
|Generate|EMBLEM:KHM|Tibalt, Cosmic Impostor||Emblem Tibalt|TibaltCosmicImpostorEmblem|
|
||||
|Generate|EMBLEM:KHM|Tyvar Kell||Emblem Tyvar|TyvarKellEmblem|
|
||||
|Generate|EMBLEM:STX|Lukka, Wayward Bonder||Emblem Lukka|LukkaWaywardBonderEmblem|
|
||||
|Generate|EMBLEM:STX|Rowan, Scholar of Sparks||Emblem Rowan|RowanScholarOfSparksEmblem|
|
||||
|
@ -769,9 +769,7 @@
|
|||
|Generate|TOK:JUD|Wurm|||WurmToken|
|
||||
|Generate|TOK:KLD|Beast|||ArchitectOfTheUntamedBeastToken|
|
||||
|Generate|TOK:KLD|Construct|1||OviyaPashiriSageLifecrafterToken|
|
||||
|Generate|TOK:KLD|Construct|2||OviyaPashiriSageLifecrafterToken|
|
||||
|Generate|TOK:KLD|Construct|3||MetallurgicSummoningsConstructToken|
|
||||
|Generate|TOK:KLD|Construct|4||MetallurgicSummoningsConstructToken|
|
||||
|Generate|TOK:KLD|Construct|2||MetallurgicSummoningsConstructToken|
|
||||
|Generate|TOK:KLD|Servo|1||ServoToken|
|
||||
|Generate|TOK:KLD|Servo|2||ServoToken|
|
||||
|Generate|TOK:KLD|Servo|3||ServoToken|
|
||||
|
@ -1246,7 +1244,7 @@
|
|||
|Generate|TOK:RNA|Ooze|||BiogenicOozeToken|
|
||||
|Generate|TOK:RNA|Sphinx|||WardenSphinxToken|
|
||||
|Generate|TOK:RNA|Spirit|||SpiritWhiteToken|
|
||||
|Generate|TOK:RNA|Thopter|||ThopterToken|
|
||||
|Generate|TOK:RNA|Thopter|||ThopterColorlessToken|
|
||||
|Generate|TOK:RNA|Treasure|||TreasureToken|
|
||||
|Generate|TOK:RNA|Zombie|||ZombieToken|
|
||||
|Generate|TOK:GRN|Angel|||AngelVigilanceToken|
|
||||
|
@ -1581,7 +1579,7 @@
|
|||
|Generate|TOK:AFR|Boo|||BooToken|
|
||||
|Generate|TOK:AFR|Devil|||DevilToken|
|
||||
|Generate|TOK:AFR|Dog Illusion|||DogIllusionToken|
|
||||
# |Generate|TOK:AFR|Faerie Dragon|||xxx| TODO: add after dice pr merge
|
||||
# |Generate|TOK:AFR|Faerie Dragon|||FaerieDragonToken|
|
||||
|Generate|TOK:AFR|Goblin|||GoblinToken|
|
||||
|Generate|TOK:AFR|Guenhwyvar|||GuenhwyvarToken|
|
||||
|Generate|TOK:AFR|Icingdeath, Frost Tongue|||IcingdeathFrostTongueToken|
|
||||
|
@ -1760,4 +1758,22 @@
|
|||
|Generate|TOK:2XM|Tuktuk the Returned|||TuktukTheReturnedToken|
|
||||
|Generate|TOK:2XM|Wolf|||WolfToken|
|
||||
|Generate|TOK:2XM|Phyrexian Wurm|1||WurmWithDeathtouchToken|
|
||||
|Generate|TOK:2XM|Phyrexian Wurm|2||WurmWithLifelinkToken|
|
||||
|Generate|TOK:2XM|Phyrexian Wurm|2||WurmWithLifelinkToken|
|
||||
|
||||
# SNC
|
||||
|Generate|TOK:SNC|Angel|||Angel33Token|
|
||||
|Generate|TOK:SNC|Cat|||CatHasteToken|
|
||||
|Generate|TOK:SNC|Citizen|||CitizenGreenWhiteToken|
|
||||
|Generate|TOK:SNC|Devil|||DevilToken|
|
||||
|Generate|TOK:SNC|Dog|||DogVigilanceToken|
|
||||
|Generate|TOK:SNC|Fish|||FishToken|
|
||||
|Generate|TOK:SNC|Ogre Warrior|||OgreWarriorToken|
|
||||
|Generate|TOK:SNC|Rhino Warrior|||RhinoWarriorToken|
|
||||
|Generate|TOK:SNC|Rogue|||RogueToken|
|
||||
|Generate|TOK:SNC|Spirit|||Spirit22Token|
|
||||
|Generate|TOK:SNC|Treasure|1||TreasureToken|
|
||||
|Generate|TOK:SNC|Treasure|2||TreasureToken|
|
||||
|Generate|TOK:SNC|Treasure|3||TreasureToken|
|
||||
|Generate|TOK:SNC|Treasure|4||TreasureToken|
|
||||
|Generate|TOK:SNC|Treasure|5||TreasureToken|
|
||||
|Generate|TOK:SNC|Wizard|||MagesAttendantToken|
|
|
@ -23,7 +23,7 @@ public final class Angel33Token extends TokenImpl {
|
|||
// Flying
|
||||
this.addAbility(FlyingAbility.getInstance());
|
||||
|
||||
availableImageSetCodes = Arrays.asList("AFR");
|
||||
availableImageSetCodes = Arrays.asList("AFR", "SNC");
|
||||
}
|
||||
|
||||
public Angel33Token(final Angel33Token token) {
|
||||
|
|
|
@ -5,6 +5,8 @@ import mage.abilities.keyword.HasteAbility;
|
|||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
*/
|
||||
|
@ -19,6 +21,8 @@ public final class CatHasteToken extends TokenImpl {
|
|||
toughness = new MageInt(2);
|
||||
|
||||
this.addAbility(HasteAbility.getInstance());
|
||||
|
||||
availableImageSetCodes = Arrays.asList("SNC");
|
||||
}
|
||||
|
||||
private CatHasteToken(final CatHasteToken token) {
|
||||
|
|
|
@ -3,6 +3,7 @@ package mage.game.permanent.token;
|
|||
import mage.MageInt;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import java.util.Arrays;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
|
@ -18,6 +19,8 @@ public final class CitizenGreenWhiteToken extends TokenImpl {
|
|||
subtype.add(SubType.CITIZEN);
|
||||
power = new MageInt(1);
|
||||
toughness = new MageInt(1);
|
||||
|
||||
availableImageSetCodes = Arrays.asList("SNC");
|
||||
}
|
||||
|
||||
private CitizenGreenWhiteToken(final CitizenGreenWhiteToken token) {
|
||||
|
|
|
@ -34,7 +34,7 @@ public final class DevilToken extends TokenImpl {
|
|||
ability.addTarget(new TargetAnyTarget());
|
||||
this.addAbility(ability);
|
||||
|
||||
availableImageSetCodes = Arrays.asList("SOI", "WAR", "AFR", "MID");
|
||||
availableImageSetCodes = Arrays.asList("SOI", "WAR", "AFR", "MID", "SNC");
|
||||
}
|
||||
|
||||
public DevilToken(final DevilToken token) {
|
||||
|
|
|
@ -4,6 +4,7 @@ import mage.MageInt;
|
|||
import mage.abilities.keyword.VigilanceAbility;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import java.util.Arrays;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
|
@ -20,6 +21,8 @@ public final class DogVigilanceToken extends TokenImpl {
|
|||
toughness = new MageInt(1);
|
||||
|
||||
this.addAbility(VigilanceAbility.getInstance());
|
||||
|
||||
availableImageSetCodes = Arrays.asList("SNC");
|
||||
}
|
||||
|
||||
private DogVigilanceToken(final DogVigilanceToken token) {
|
||||
|
|
|
@ -4,6 +4,7 @@ import mage.MageInt;
|
|||
import mage.abilities.keyword.CantBeBlockedSourceAbility;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import java.util.Arrays;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
|
@ -19,6 +20,8 @@ public final class FishToken extends TokenImpl {
|
|||
toughness = new MageInt(1);
|
||||
|
||||
addAbility(new CantBeBlockedSourceAbility("this creature can't be blocked"));
|
||||
|
||||
availableImageSetCodes = Arrays.asList("SNC");
|
||||
}
|
||||
|
||||
public FishToken(final FishToken token) {
|
||||
|
|
|
@ -23,7 +23,7 @@ public final class KnightToken extends TokenImpl {
|
|||
toughness = new MageInt(2);
|
||||
this.addAbility(VigilanceAbility.getInstance());
|
||||
|
||||
availableImageSetCodes = Arrays.asList("C13", "C15", "CMA", "DGM", "ORI", "RTR", "M19", "ELD", "M21", "AFC", "MIC");
|
||||
availableImageSetCodes = Arrays.asList("C13", "C15", "CMA", "DGM", "ORI", "RTR", "M19", "ELD", "M21", "AFC", "MIC", "DOM");
|
||||
}
|
||||
|
||||
public KnightToken(final KnightToken token) {
|
||||
|
@ -43,7 +43,7 @@ public final class KnightToken extends TokenImpl {
|
|||
}
|
||||
|
||||
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("DOM")) {
|
||||
this.setTokenType(RandomUtil.nextInt(2) + 1);
|
||||
setTokenType(RandomUtil.nextInt(2) + 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,6 +10,7 @@ import mage.constants.CardType;
|
|||
import mage.constants.SubType;
|
||||
import mage.filter.StaticFilters;
|
||||
import mage.target.TargetSpell;
|
||||
import java.util.Arrays;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
|
@ -30,6 +31,8 @@ public final class MagesAttendantToken extends TokenImpl {
|
|||
ability.addCost(new SacrificeSourceCost().setText("sacrifice this creature"));
|
||||
ability.addTarget(new TargetSpell(StaticFilters.FILTER_SPELL_NON_CREATURE));
|
||||
this.addAbility(ability);
|
||||
|
||||
availableImageSetCodes = Arrays.asList("SNC");
|
||||
}
|
||||
|
||||
private MagesAttendantToken(final MagesAttendantToken token) {
|
||||
|
|
|
@ -40,7 +40,7 @@ public final class MetallurgicSummoningsConstructToken extends TokenImpl {
|
|||
super.setExpansionSetCodeForImage(code);
|
||||
|
||||
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("KLD")) {
|
||||
setTokenType(RandomUtil.nextInt(2) + 3); // from 3 to 4
|
||||
setTokenType(2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,6 +3,7 @@ package mage.game.permanent.token;
|
|||
import mage.MageInt;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import java.util.Arrays;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
|
@ -17,6 +18,8 @@ public final class OgreWarriorToken extends TokenImpl {
|
|||
subtype.add(SubType.WARRIOR);
|
||||
power = new MageInt(4);
|
||||
toughness = new MageInt(3);
|
||||
|
||||
availableImageSetCodes = Arrays.asList("SNC");
|
||||
}
|
||||
|
||||
public OgreWarriorToken(final OgreWarriorToken token) {
|
||||
|
|
|
@ -38,8 +38,8 @@ public final class OviyaPashiriSageLifecrafterToken extends TokenImpl {
|
|||
public void setExpansionSetCodeForImage(String code) {
|
||||
super.setExpansionSetCodeForImage(code);
|
||||
|
||||
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("C21")) {
|
||||
setTokenType(2);
|
||||
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("KLD")) {
|
||||
setTokenType(1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,6 +3,7 @@ package mage.game.permanent.token;
|
|||
import mage.MageInt;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import java.util.Arrays;
|
||||
|
||||
/**
|
||||
* @author TheElk801
|
||||
|
@ -16,6 +17,8 @@ public final class RogueToken extends TokenImpl {
|
|||
color.setBlack(true);
|
||||
power = new MageInt(2);
|
||||
toughness = new MageInt(2);
|
||||
|
||||
availableImageSetCodes = Arrays.asList("SNC");
|
||||
}
|
||||
|
||||
public RogueToken(final RogueToken token) {
|
||||
|
|
|
@ -4,6 +4,7 @@ import mage.MageInt;
|
|||
import mage.abilities.keyword.FlyingAbility;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.SubType;
|
||||
import java.util.Arrays;
|
||||
|
||||
/**
|
||||
*
|
||||
|
@ -19,6 +20,8 @@ public class Spirit22Token extends TokenImpl {
|
|||
power = new MageInt(2);
|
||||
toughness = new MageInt(2);
|
||||
addAbility(FlyingAbility.getInstance());
|
||||
|
||||
availableImageSetCodes = Arrays.asList("SNC");
|
||||
}
|
||||
|
||||
private Spirit22Token(final Spirit22Token token) {
|
||||
|
|
|
@ -24,7 +24,7 @@ public final class ThopterColorlessToken extends TokenImpl {
|
|||
addAbility(FlyingAbility.getInstance());
|
||||
|
||||
availableImageSetCodes = Arrays.asList("C18", "EXO", "KLD", "MBS", "ORI", "VMA", "M19", "ZNC",
|
||||
"KHC", "C21", "MH2", "AFC", "VOC", "NEC", "2XM");
|
||||
"KHC", "C21", "MH2", "AFC", "VOC", "NEC", "2XM", "RNA");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -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");
|
||||
availableImageSetCodes = Arrays.asList("XLN", "RNA", "M20", "C19", "C20", "M21", "CMR", "KHM", "STX", "MH2", "AFR", "VOW", "NEO", "SLD", "2XM", "SNC");
|
||||
}
|
||||
|
||||
public TreasureToken(final TreasureToken token) {
|
||||
|
@ -45,5 +45,8 @@ public final class TreasureToken extends TokenImpl {
|
|||
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("XLN")) {
|
||||
this.setTokenType(RandomUtil.nextInt(4) + 1);
|
||||
}
|
||||
if (getOriginalExpansionSetCode() != null && getOriginalExpansionSetCode().equals("SNC")) {
|
||||
this.setTokenType(RandomUtil.nextInt(5) + 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue