package mage.verify.mtgjson; import java.util.List; public final class MtgJsonCard { // v5 support // https://mtgjson.com/data-models/card-atomic/ // contains only used fields, if you need more for tests then just add it here public String name; public String asciiName; // mtgjson uses it for some cards like El-Hajjaj public String number; // from sets source only, see https://mtgjson.com/data-models/card/ public String faceName; public String side; public String manaCost; public List colorIdentity; public List colors; public List supertypes; public List types; public List subtypes; public String text; // rules splits by \n public String loyalty; public String power; public String toughness; public Integer edhrecRank; public String layout; public boolean isFullArt; public List printings; // set codes with that card public String getRealCardName() { // double faces cards must be split in different cards in xmage (so use faceName instead name) // for card searching if ("transform".equals(layout) || "flip".equals(layout) || "adventure".equals(layout) || "modal_dfc".equals(layout) || "meld".equals(layout)) { // mtgjson uses composite names for meld cards, but scryfall uses simple face names return faceName; } return asciiName != null ? asciiName : name; } }