Merge pull request #157 from paulsnoops/archive_formats

"Historic" formats re-work - Part 2: Re-name to "Archived"
This commit is contained in:
Chris H
2022-06-22 08:37:17 -04:00
committed by GitHub
970 changed files with 1056 additions and 1042 deletions

View File

@@ -48,7 +48,7 @@ public class GameFormat implements Comparable<GameFormat> {
public enum FormatType { public enum FormatType {
SANCTIONED, SANCTIONED,
CASUAL, CASUAL,
HISTORIC, ARCHIVED,
DIGITAL, DIGITAL,
CUSTOM CUSTOM
} }
@@ -290,7 +290,7 @@ public class GameFormat implements Comparable<GameFormat> {
if (other.formatSubType != formatSubType){ if (other.formatSubType != formatSubType){
return formatSubType.compareTo(other.formatSubType); return formatSubType.compareTo(other.formatSubType);
} }
if (formatType.equals(FormatType.HISTORIC)){ if (formatType.equals(FormatType.ARCHIVED)){
int compareDates = this.effectiveDate.compareTo(other.effectiveDate); int compareDates = this.effectiveDate.compareTo(other.effectiveDate);
if (compareDates != 0) if (compareDates != 0)
return compareDates; return compareDates;
@@ -306,7 +306,7 @@ public class GameFormat implements Comparable<GameFormat> {
public static class Reader extends StorageReaderRecursiveFolderWithUserFolder<GameFormat> { public static class Reader extends StorageReaderRecursiveFolderWithUserFolder<GameFormat> {
List<GameFormat> naturallyOrdered = new ArrayList<>(); List<GameFormat> naturallyOrdered = new ArrayList<>();
boolean includeHistoric; boolean includeArchived;
private List<String> coreFormats = new ArrayList<>(); private List<String> coreFormats = new ArrayList<>();
{ {
coreFormats.add("Standard.txt"); coreFormats.add("Standard.txt");
@@ -321,14 +321,14 @@ public class GameFormat implements Comparable<GameFormat> {
coreFormats.add("Oathbreaker.txt"); coreFormats.add("Oathbreaker.txt");
} }
public Reader(File forgeFormats, File customFormats, boolean includeHistoric) { public Reader(File forgeFormats, File customFormats, boolean includeArchived) {
super(forgeFormats, customFormats, GameFormat.FN_GET_NAME); super(forgeFormats, customFormats, GameFormat.FN_GET_NAME);
this.includeHistoric=includeHistoric; this.includeArchived=includeArchived;
} }
@Override @Override
protected GameFormat read(File file) { protected GameFormat read(File file) {
if (!includeHistoric && !coreFormats.contains(file.getName())) { if (!includeArchived && !coreFormats.contains(file.getName())) {
return null; return null;
} }
final Map<String, List<String>> contents = FileSection.parseSections(FileUtil.readFile(file)); final Map<String, List<String>> contents = FileSection.parseSections(FileUtil.readFile(file));
@@ -348,8 +348,13 @@ public class GameFormat implements Comparable<GameFormat> {
try { try {
formatType = FormatType.valueOf(section.get("type").toUpperCase()); formatType = FormatType.valueOf(section.get("type").toUpperCase());
} catch (Exception e) { } catch (Exception e) {
if ("HISTORIC".equals(section.get("type").toUpperCase())) {
System.out.println("Historic is no longer used as a format Type. Please update " + file.getAbsolutePath() + " to use 'Archived' instead");
formatType = FormatType.ARCHIVED;
} else {
formatType = FormatType.CUSTOM; formatType = FormatType.CUSTOM;
} }
}
FormatSubType formatsubType; FormatSubType formatsubType;
try { try {
formatsubType = FormatSubType.valueOf(section.get("subtype").toUpperCase()); formatsubType = FormatSubType.valueOf(section.get("subtype").toUpperCase());
@@ -450,7 +455,7 @@ public class GameFormat implements Comparable<GameFormat> {
public Iterable<GameFormat> getFilterList() { public Iterable<GameFormat> getFilterList() {
List<GameFormat> coreList = new ArrayList<>(); List<GameFormat> coreList = new ArrayList<>();
for (GameFormat format: naturallyOrdered) { for (GameFormat format: naturallyOrdered) {
if (!format.getFormatType().equals(FormatType.HISTORIC) if (!format.getFormatType().equals(FormatType.ARCHIVED)
&&!format.getFormatType().equals(FormatType.DIGITAL)){ &&!format.getFormatType().equals(FormatType.DIGITAL)){
coreList.add(format); coreList.add(format);
} }
@@ -458,10 +463,10 @@ public class GameFormat implements Comparable<GameFormat> {
return coreList; return coreList;
} }
public Iterable<GameFormat> getHistoricList() { public Iterable<GameFormat> getArchivedList() {
List<GameFormat> coreList = new ArrayList<>(); List<GameFormat> coreList = new ArrayList<>();
for (GameFormat format: naturallyOrdered) { for (GameFormat format: naturallyOrdered) {
if (format.getFormatType().equals(FormatType.HISTORIC)){ if (format.getFormatType().equals(FormatType.ARCHIVED)){
coreList.add(format); coreList.add(format);
} }
} }
@@ -470,7 +475,7 @@ public class GameFormat implements Comparable<GameFormat> {
public Iterable<GameFormat> getBlockList() { public Iterable<GameFormat> getBlockList() {
List<GameFormat> blockFormats = new ArrayList<>(); List<GameFormat> blockFormats = new ArrayList<>();
for (GameFormat format : this.getHistoricList()){ for (GameFormat format : this.getArchivedList()){
if (format.getFormatSubType() != GameFormat.FormatSubType.BLOCK) if (format.getFormatSubType() != GameFormat.FormatSubType.BLOCK)
continue; continue;
if (!format.getName().endsWith("Block")) if (!format.getName().endsWith("Block"))
@@ -481,10 +486,10 @@ public class GameFormat implements Comparable<GameFormat> {
return blockFormats; return blockFormats;
} }
public Map<String, List<GameFormat>> getHistoricMap() { public Map<String, List<GameFormat>> getArchivedMap() {
Map<String, List<GameFormat>> coreList = new HashMap<>(); Map<String, List<GameFormat>> coreList = new HashMap<>();
for (GameFormat format: naturallyOrdered){ for (GameFormat format: naturallyOrdered){
if (format.getFormatType().equals(FormatType.HISTORIC)){ if (format.getFormatType().equals(FormatType.ARCHIVED)){
String alpha = format.getName().substring(0,1); String alpha = format.getName().substring(0,1);
if (!coreList.containsKey(alpha)) { if (!coreList.containsKey(alpha)) {
coreList.put(alpha,new ArrayList<>()); coreList.put(alpha,new ArrayList<>());
@@ -557,9 +562,9 @@ public class GameFormat implements Comparable<GameFormat> {
//exclude Commander format as other deck checks are not performed here //exclude Commander format as other deck checks are not performed here
continue; continue;
} }
if (gf.getFormatType().equals(FormatType.HISTORIC) && coveredTypes.contains(gf.getFormatSubType()) if (gf.getFormatType().equals(FormatType.ARCHIVED) && coveredTypes.contains(gf.getFormatSubType())
&& !exhaustive){ && !exhaustive){
//exclude duplicate formats - only keep first of e.g. Standard historical //exclude duplicate formats - only keep first of e.g. Standard archived
continue; continue;
} }
if (gf.isPoolLegal(allCards)) { if (gf.isPoolLegal(allCards)) {
@@ -590,7 +595,7 @@ public class GameFormat implements Comparable<GameFormat> {
if (gf2.formatSubType != gf1.formatSubType){ if (gf2.formatSubType != gf1.formatSubType){
return gf1.formatSubType.compareTo(gf2.formatSubType); return gf1.formatSubType.compareTo(gf2.formatSubType);
} }
if (gf1.formatType.equals(FormatType.HISTORIC)){ if (gf1.formatType.equals(FormatType.ARCHIVED)){
if (gf1.effectiveDate!=gf2.effectiveDate) {//for matching dates or default dates default to name sorting if (gf1.effectiveDate!=gf2.effectiveDate) {//for matching dates or default dates default to name sorting
return gf1.effectiveDate.compareTo(gf2.effectiveDate); return gf1.effectiveDate.compareTo(gf2.effectiveDate);
} }

View File

@@ -216,7 +216,7 @@ public class CardManager extends ItemManager<PaperCard> {
} }
menu.add(world); menu.add(world);
if (FModel.getPreferences().getPrefBoolean(ForgePreferences.FPref.LOAD_HISTORIC_FORMATS)) { if (FModel.getPreferences().getPrefBoolean(ForgePreferences.FPref.LOAD_ARCHIVED_FORMATS)) {
JMenu blocks = GuiUtils.createMenu(localizer.getMessage("lblBlock")); JMenu blocks = GuiUtils.createMenu(localizer.getMessage("lblBlock"));
final Iterable<GameFormat> blockFormats = FModel.getFormats().getBlockList(); final Iterable<GameFormat> blockFormats = FModel.getFormats().getBlockList();
for (final GameFormat f : blockFormats) { for (final GameFormat f : blockFormats) {

View File

@@ -279,7 +279,7 @@ public final class DeckManager extends ItemManager<DeckProxy> implements IHasGam
} }
menu.add(world); menu.add(world);
if (FModel.getPreferences().getPrefBoolean(ForgePreferences.FPref.LOAD_HISTORIC_FORMATS)) { if (FModel.getPreferences().getPrefBoolean(ForgePreferences.FPref.LOAD_ARCHIVED_FORMATS)) {
JMenu blocks = GuiUtils.createMenu(localizer.getMessage("lblBlock")); JMenu blocks = GuiUtils.createMenu(localizer.getMessage("lblBlock"));
final Iterable<GameFormat> blockFormats = FModel.getFormats().getBlockList(); final Iterable<GameFormat> blockFormats = FModel.getFormats().getBlockList();
for (final GameFormat f : blockFormats) { for (final GameFormat f : blockFormats) {

View File

@@ -42,7 +42,7 @@ public class DialogChooseFormats {
List<FCheckBox> sanctioned = new ArrayList<>(); List<FCheckBox> sanctioned = new ArrayList<>();
List<FCheckBox> casual = new ArrayList<>(); List<FCheckBox> casual = new ArrayList<>();
List<FCheckBox> historic = new ArrayList<>(); List<FCheckBox> archived = new ArrayList<>();
for (GameFormat format : FModel.getFormats().getOrderedList()){ for (GameFormat format : FModel.getFormats().getOrderedList()){
FCheckBox box = new FCheckBox(format.getName()); FCheckBox box = new FCheckBox(format.getName());
@@ -51,8 +51,8 @@ public class DialogChooseFormats {
case SANCTIONED: case SANCTIONED:
sanctioned.add(box); sanctioned.add(box);
break; break;
case HISTORIC: case ARCHIVED:
historic.add(box); archived.add(box);
break; break;
case CUSTOM: case CUSTOM:
case CASUAL: case CASUAL:
@@ -74,7 +74,7 @@ public class DialogChooseFormats {
String constraints = "aligny top"; String constraints = "aligny top";
panel.add(makeCheckBoxList(sanctioned, localizer.getMessage("lblSanctioned"), true), constraints); panel.add(makeCheckBoxList(sanctioned, localizer.getMessage("lblSanctioned"), true), constraints);
panel.add(makeCheckBoxList(casual, localizer.getMessage("lblOther"), false), constraints); panel.add(makeCheckBoxList(casual, localizer.getMessage("lblOther"), false), constraints);
panel.add(makeCheckBoxList(historic, localizer.getMessage("lblHistoric"), false), constraints); panel.add(makeCheckBoxList(archived, localizer.getMessage("lblArchived"), false), constraints);
final JPanel overlay = FOverlay.SINGLETON_INSTANCE.getPanel(); final JPanel overlay = FOverlay.SINGLETON_INSTANCE.getPanel();
overlay.setLayout(new MigLayout("insets 0, gap 0, wrap, ax center, ay center")); overlay.setLayout(new MigLayout("insets 0, gap 0, wrap, ax center, ay center"));

View File

@@ -167,7 +167,7 @@ public enum CSubmenuPreferences implements ICDoc {
lstControls.add(Pair.of(view.getCbFilterLandsByColorId(), FPref.UI_FILTER_LANDS_BY_COLOR_IDENTITY)); lstControls.add(Pair.of(view.getCbFilterLandsByColorId(), FPref.UI_FILTER_LANDS_BY_COLOR_IDENTITY));
lstControls.add(Pair.of(view.getCbLoadCardsLazily(), FPref.LOAD_CARD_SCRIPTS_LAZILY)); lstControls.add(Pair.of(view.getCbLoadCardsLazily(), FPref.LOAD_CARD_SCRIPTS_LAZILY));
lstControls.add(Pair.of(view.getCbLoadHistoricFormats(), FPref.LOAD_HISTORIC_FORMATS)); lstControls.add(Pair.of(view.getCbLoadArchivedFormats(), FPref.LOAD_ARCHIVED_FORMATS));
lstControls.add(Pair.of(view.getCbSmartCardArtSelectionOpt(), FPref.UI_SMART_CARD_ART)); lstControls.add(Pair.of(view.getCbSmartCardArtSelectionOpt(), FPref.UI_SMART_CARD_ART));
lstControls.add(Pair.of(view.getCbShowDraftRanking(), FPref.UI_OVERLAY_DRAFT_RANKING)); lstControls.add(Pair.of(view.getCbShowDraftRanking(), FPref.UI_OVERLAY_DRAFT_RANKING));

View File

@@ -72,7 +72,7 @@ public enum VSubmenuPreferences implements IVSubmenu<CSubmenuPreferences> {
private final JCheckBox cbManaLostPrompt = new OptionsCheckBox(localizer.getMessage("cbManaLostPrompt")); private final JCheckBox cbManaLostPrompt = new OptionsCheckBox(localizer.getMessage("cbManaLostPrompt"));
private final JCheckBox cbDevMode = new OptionsCheckBox(localizer.getMessage("cbDevMode")); private final JCheckBox cbDevMode = new OptionsCheckBox(localizer.getMessage("cbDevMode"));
private final JCheckBox cbLoadCardsLazily = new OptionsCheckBox(localizer.getMessage("cbLoadCardsLazily")); private final JCheckBox cbLoadCardsLazily = new OptionsCheckBox(localizer.getMessage("cbLoadCardsLazily"));
private final JCheckBox cbLoadHistoricFormats = new OptionsCheckBox(localizer.getMessage("cbLoadHistoricFormats")); private final JCheckBox cbLoadArchivedFormats = new OptionsCheckBox(localizer.getMessage("cbLoadArchivedFormats"));
private final JCheckBox cbWorkshopSyntax = new OptionsCheckBox(localizer.getMessage("cbWorkshopSyntax")); private final JCheckBox cbWorkshopSyntax = new OptionsCheckBox(localizer.getMessage("cbWorkshopSyntax"));
private final JCheckBox cbEnforceDeckLegality = new OptionsCheckBox(localizer.getMessage("cbEnforceDeckLegality")); private final JCheckBox cbEnforceDeckLegality = new OptionsCheckBox(localizer.getMessage("cbEnforceDeckLegality"));
private final JCheckBox cbSideboardForAI = new OptionsCheckBox(localizer.getMessage("cbSideboardForAI")); private final JCheckBox cbSideboardForAI = new OptionsCheckBox(localizer.getMessage("cbSideboardForAI"));
@@ -322,8 +322,8 @@ public enum VSubmenuPreferences implements IVSubmenu<CSubmenuPreferences> {
pnlPrefs.add(cbLoadCardsLazily, titleConstraints); pnlPrefs.add(cbLoadCardsLazily, titleConstraints);
pnlPrefs.add(new NoteLabel(localizer.getMessage("nlLoadCardsLazily")), descriptionConstraints); pnlPrefs.add(new NoteLabel(localizer.getMessage("nlLoadCardsLazily")), descriptionConstraints);
pnlPrefs.add(cbLoadHistoricFormats, titleConstraints); pnlPrefs.add(cbLoadArchivedFormats, titleConstraints);
pnlPrefs.add(new NoteLabel(localizer.getMessage("nlLoadHistoricFormats")), descriptionConstraints); pnlPrefs.add(new NoteLabel(localizer.getMessage("nlLoadArchivedFormats")), descriptionConstraints);
pnlPrefs.add(cbEnableUnknownCards, titleConstraints); pnlPrefs.add(cbEnableUnknownCards, titleConstraints);
pnlPrefs.add(new NoteLabel(localizer.getMessage("nlEnableUnknownCards")), descriptionConstraints); pnlPrefs.add(new NoteLabel(localizer.getMessage("nlEnableUnknownCards")), descriptionConstraints);
@@ -741,8 +741,8 @@ public enum VSubmenuPreferences implements IVSubmenu<CSubmenuPreferences> {
} }
/** @return {@link javax.swing.JCheckBox} */ /** @return {@link javax.swing.JCheckBox} */
public JCheckBox getCbLoadHistoricFormats() { public JCheckBox getCbLoadArchivedFormats() {
return cbLoadHistoricFormats; return cbLoadArchivedFormats;
} }
public JCheckBox getCbWorkshopSyntax() { public JCheckBox getCbWorkshopSyntax() {

View File

@@ -22,22 +22,22 @@ import forge.util.Utils;
/** /**
* Created by maustin on 16/04/2018. * Created by maustin on 16/04/2018.
*/ */
public class HistoricFormatSelect extends FScreen { public class ArchivedFormatSelect extends FScreen {
private GameFormat selectedFormat; private GameFormat selectedFormat;
private final FGroupList<GameFormat> lstFormats = add(new FGroupList<>()); private final FGroupList<GameFormat> lstFormats = add(new FGroupList<>());
private final Set<GameFormat.FormatSubType> historicSubTypes = new HashSet<>(Arrays.asList(GameFormat.FormatSubType.BLOCK, private final Set<GameFormat.FormatSubType> archivedSubTypes = new HashSet<>(Arrays.asList(GameFormat.FormatSubType.BLOCK,
GameFormat.FormatSubType.STANDARD,GameFormat.FormatSubType.EXTENDED,GameFormat.FormatSubType.MODERN, GameFormat.FormatSubType.STANDARD,GameFormat.FormatSubType.EXTENDED,GameFormat.FormatSubType.MODERN,
GameFormat.FormatSubType.LEGACY, GameFormat.FormatSubType.VINTAGE)); GameFormat.FormatSubType.LEGACY, GameFormat.FormatSubType.VINTAGE));
private Runnable onCloseCallBack; private Runnable onCloseCallBack;
public HistoricFormatSelect() { public ArchivedFormatSelect() {
super(Forge.getLocalizer().getMessage("lblChooseFormat")); super(Forge.getLocalizer().getMessage("lblChooseFormat"));
for (GameFormat.FormatType group:GameFormat.FormatType.values()){ for (GameFormat.FormatType group:GameFormat.FormatType.values()){
if (group == GameFormat.FormatType.HISTORIC){ if (group == GameFormat.FormatType.ARCHIVED){
for (GameFormat.FormatSubType subgroup:GameFormat.FormatSubType.values()){ for (GameFormat.FormatSubType subgroup:GameFormat.FormatSubType.values()){
if (historicSubTypes.contains(subgroup)){ if (archivedSubTypes.contains(subgroup)){
lstFormats.addGroup(group.name() + "-" + subgroup.name()); lstFormats.addGroup(group.name() + "-" + subgroup.name());
} }
} }
@@ -53,7 +53,7 @@ public class HistoricFormatSelect extends FScreen {
case CASUAL: case CASUAL:
lstFormats.addItem(format, 1); lstFormats.addItem(format, 1);
break; break;
case HISTORIC: case ARCHIVED:
switch (format.getFormatSubType()){ switch (format.getFormatSubType()){
case BLOCK: case BLOCK:
lstFormats.addItem(format, 2); lstFormats.addItem(format, 2);

View File

@@ -66,16 +66,16 @@ public abstract class FormatFilter<T extends InventoryItem> extends ItemFilter<T
preventHandling = true; preventHandling = true;
cbxFormats.setText(selectedFormat); //restore previous selection by default cbxFormats.setText(selectedFormat); //restore previous selection by default
preventHandling = false; preventHandling = false;
HistoricFormatSelect historicFormatSelect = new HistoricFormatSelect(); ArchivedFormatSelect archivedFormatSelect = new ArchivedFormatSelect();
historicFormatSelect.setOnCloseCallBack(new Runnable(){ archivedFormatSelect.setOnCloseCallBack(new Runnable(){
@Override @Override
public void run() { public void run() {
format = historicFormatSelect.getSelectedFormat(); format = archivedFormatSelect.getSelectedFormat();
cbxFormats.setText(format.getName()); cbxFormats.setText(format.getName());
applyChange(); applyChange();
} }
}); });
Forge.openScreen(historicFormatSelect); Forge.openScreen(archivedFormatSelect);
} }
else if (index == cbxFormats.getItemCount() - 1) { else if (index == cbxFormats.getItemCount() - 1) {
preventHandling = true; preventHandling = true;

View File

@@ -31,7 +31,7 @@ import forge.gui.UiCommand;
import forge.gui.util.SOptionPane; import forge.gui.util.SOptionPane;
import forge.item.PaperCard; import forge.item.PaperCard;
import forge.item.PreconDeck; import forge.item.PreconDeck;
import forge.itemmanager.filters.HistoricFormatSelect; import forge.itemmanager.filters.ArchivedFormatSelect;
import forge.localinstance.properties.ForgeConstants; import forge.localinstance.properties.ForgeConstants;
import forge.model.CardCollections; import forge.model.CardCollections;
import forge.model.FModel; import forge.model.FModel;
@@ -301,13 +301,13 @@ public class NewQuestScreen extends FScreen {
btnSelectFormat.setCommand(new FEventHandler() { btnSelectFormat.setCommand(new FEventHandler() {
@Override @Override
public void handleEvent(FEvent e) { public void handleEvent(FEvent e) {
HistoricFormatSelect historicFormatSelect = new HistoricFormatSelect(); ArchivedFormatSelect archivedFormatSelect = new ArchivedFormatSelect();
historicFormatSelect.setOnCloseCallBack(new Runnable() { archivedFormatSelect.setOnCloseCallBack(new Runnable() {
@Override @Override
public void run() { public void run() {
customFormatCodes.clear(); customFormatCodes.clear();
btnSelectFormat.setText(historicFormatSelect.getSelectedFormat().getName()); btnSelectFormat.setText(archivedFormatSelect.getSelectedFormat().getName());
List<String> setsToAdd = historicFormatSelect.getSelectedFormat().getAllowedSetCodes(); List<String> setsToAdd = archivedFormatSelect.getSelectedFormat().getAllowedSetCodes();
for (String setName:setsToAdd){ for (String setName:setsToAdd){
if(!unselectableSets.contains(setName)){ if(!unselectableSets.contains(setName)){
customFormatCodes.add(setName); customFormatCodes.add(setName);
@@ -315,20 +315,20 @@ public class NewQuestScreen extends FScreen {
} }
} }
}); });
Forge.openScreen(historicFormatSelect); Forge.openScreen(archivedFormatSelect);
} }
}); });
btnPrizeSelectFormat.setCommand(new FEventHandler() { btnPrizeSelectFormat.setCommand(new FEventHandler() {
@Override @Override
public void handleEvent(FEvent e) { public void handleEvent(FEvent e) {
HistoricFormatSelect historicFormatSelect = new HistoricFormatSelect(); ArchivedFormatSelect archivedFormatSelect = new ArchivedFormatSelect();
historicFormatSelect.setOnCloseCallBack(new Runnable() { archivedFormatSelect.setOnCloseCallBack(new Runnable() {
@Override @Override
public void run() { public void run() {
customPrizeFormatCodes.clear(); customPrizeFormatCodes.clear();
btnPrizeSelectFormat.setText(historicFormatSelect.getSelectedFormat().getName()); btnPrizeSelectFormat.setText(archivedFormatSelect.getSelectedFormat().getName());
List<String> setsToAdd = historicFormatSelect.getSelectedFormat().getAllowedSetCodes(); List<String> setsToAdd = archivedFormatSelect.getSelectedFormat().getAllowedSetCodes();
for (String setName:setsToAdd){ for (String setName:setsToAdd){
if(!unselectableSets.contains(setName)){ if(!unselectableSets.contains(setName)){
customPrizeFormatCodes.add(setName); customPrizeFormatCodes.add(setName);
@@ -336,7 +336,7 @@ public class NewQuestScreen extends FScreen {
} }
} }
}); });
Forge.openScreen(historicFormatSelect); Forge.openScreen(archivedFormatSelect);
} }
}); });

View File

@@ -362,9 +362,9 @@ public class SettingsPage extends TabPage<SettingsScreen> {
Forge.getLocalizer().getMessage("cbLoadCardsLazily"), Forge.getLocalizer().getMessage("cbLoadCardsLazily"),
Forge.getLocalizer().getMessage("nlLoadCardsLazily")), Forge.getLocalizer().getMessage("nlLoadCardsLazily")),
3); 3);
lstSettings.addItem(new BooleanSetting(FPref.LOAD_HISTORIC_FORMATS, lstSettings.addItem(new BooleanSetting(FPref.LOAD_ARCHIVED_FORMATS,
Forge.getLocalizer().getMessage("cbLoadHistoricFormats"), Forge.getLocalizer().getMessage("cbLoadArchivedFormats"),
Forge.getLocalizer().getMessage("nlLoadHistoricFormats")), Forge.getLocalizer().getMessage("nlLoadArchivedFormats")),
3); 3);
lstSettings.addItem(new BooleanSetting(FPref.UI_LOAD_UNKNOWN_CARDS, lstSettings.addItem(new BooleanSetting(FPref.UI_LOAD_UNKNOWN_CARDS,
Forge.getLocalizer().getMessage("lblEnableUnknownCards"), Forge.getLocalizer().getMessage("lblEnableUnknownCards"),

View File

@@ -1,4 +1,5 @@
#Add one announcement per line #Add one announcement per line
Get in the discord if you aren't yet. https://discord.gg/3v9JCVr Get in the discord if you aren't yet. https://discord.gg/3v9JCVr
The SNC set is fully integrated, as well as most of the NCC cards (several cards are still missing from the latter). The SNC set is fully integrated, as well as most of the NCC cards (several cards are still missing from the latter).
Historic-type formats have been renamed to Archived to reduce confusion between them and the official sanctioned format. You will need to re-enable them in your preferences.
*** Android 7 & 8 support is now deprecated. Support will be dropped in an upcoming release. *** *** Android 7 & 8 support is now deprecated. Support will be dropped in an upcoming release. ***

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Alchemy (2021-12-09) Name:Alchemy (2021-12-09)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2021-12-09 Effective:2021-12-09
Sets:ANA, ANB, ZNR, KHM, STX, AFR, MID, VOW, YMID Sets:ANA, ANB, ZNR, KHM, STX, AFR, MID, VOW, YMID

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Alchemy (NEO) Name:Alchemy (NEO)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2022-02-10 Effective:2022-02-10
Sets:ANA, ANB, ZNR, KHM, STX, AFR, MID, VOW, YMID, NEO Sets:ANA, ANB, ZNR, KHM, STX, AFR, MID, VOW, YMID, NEO

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Alchemy (YNEO) Name:Alchemy (YNEO)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2022-03-17 Effective:2022-03-17
Sets:ANA, ANB, ZNR, KHM, STX, AFR, MID, VOW, YMID, NEO, YNEO Sets:ANA, ANB, ZNR, KHM, STX, AFR, MID, VOW, YMID, NEO, YNEO

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Alchemy (SNC) Name:Alchemy (SNC)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2022-04-28 Effective:2022-04-28
Sets:ANA, ANB, ZNR, KHM, STX, AFR, MID, VOW, YMID, NEO, YNEO, SNC Sets:ANA, ANB, ZNR, KHM, STX, AFR, MID, VOW, YMID, NEO, YNEO, SNC

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Alchemy (YSNC) Name:Alchemy (YSNC)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2022-06-02 Effective:2022-06-02
Sets:ANA, ANB, ZNR, KHM, STX, AFR, MID, VOW, YMID, NEO, YNEO, SNC, YSNC Sets:ANA, ANB, ZNR, KHM, STX, AFR, MID, VOW, YMID, NEO, YNEO, SNC, YSNC

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (2017-09-07) Name:Arena Standard (2017-09-07)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2017-09-07 Effective:2017-09-07
Sets:XLN Sets:XLN

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (RIX) Name:Arena Standard (RIX)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2018-01-18 Effective:2018-01-18
Sets:XLN, RIX Sets:XLN, RIX

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (AKH/HOU) Name:Arena Standard (AKH/HOU)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2018-03-22 Effective:2018-03-22
Sets:XLN, RIX, AKH, HOU Sets:XLN, RIX, AKH, HOU

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (DOM) Name:Arena Standard (DOM)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2018-04-26 Effective:2018-04-26
Sets:XLN, RIX, AKH, HOU, DOM Sets:XLN, RIX, AKH, HOU, DOM

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (KLD/AER) Name:Arena Standard (KLD/AER)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2018-06-07 Effective:2018-06-07
Sets:XLN, RIX, AKH, HOU, DOM, KLD, AER, W17 Sets:XLN, RIX, AKH, HOU, DOM, KLD, AER, W17

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (M19) Name:Arena Standard (M19)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2018-07-12 Effective:2018-07-12
Sets:XLN, RIX, AKH, HOU, DOM, KLD, AER, W17, M19, ANA, PANA Sets:XLN, RIX, AKH, HOU, DOM, KLD, AER, W17, M19, ANA, PANA

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (GRN) Name:Arena Standard (GRN)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2018-09-27 Effective:2018-09-27
Sets:XLN, RIX, DOM, M19, ANA, PANA, GRN Sets:XLN, RIX, DOM, M19, ANA, PANA, GRN

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (G18) Name:Arena Standard (G18)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2018-11-15 Effective:2018-11-15
Sets:XLN, RIX, DOM, M19, ANA, PANA, GRN, G18 Sets:XLN, RIX, DOM, M19, ANA, PANA, GRN, G18

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (RNA) Name:Arena Standard (RNA)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2019-01-17 Effective:2019-01-17
Sets:XLN, RIX, DOM, M19, ANA, PANA, GRN, G18, RNA Sets:XLN, RIX, DOM, M19, ANA, PANA, GRN, G18, RNA

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (2019-02-14) Name:Arena Standard (2019-02-14)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2019-02-14 Effective:2019-02-14
Sets:XLN, RIX, DOM, M19, ANA, PANA, GRN, G18, RNA Sets:XLN, RIX, DOM, M19, ANA, PANA, GRN, G18, RNA

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (WAR) Name:Arena Standard (WAR)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2019-04-25 Effective:2019-04-25
Sets:XLN, RIX, DOM, M19, ANA, PANA, GRN, G18, RNA, WAR Sets:XLN, RIX, DOM, M19, ANA, PANA, GRN, G18, RNA, WAR

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (M20) Name:Arena Standard (M20)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2019-07-02 Effective:2019-07-02
Sets:XLN, RIX, DOM, M19, ANA, PANA, GRN, G18, RNA, WAR, M20 Sets:XLN, RIX, DOM, M19, ANA, PANA, GRN, G18, RNA, WAR, M20

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (ELD) Name:Arena Standard (ELD)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2019-09-26 Effective:2019-09-26
Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (2019-10-24) Name:Arena Standard (2019-10-24)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2019-10-24 Effective:2019-10-24
Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (2019-11-18) Name:Arena Standard (2019-11-18)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2019-11-18 Effective:2019-11-18
Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (THB) Name:Arena Standard (THB)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2020-01-16 Effective:2020-01-16
Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD, THB Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD, THB

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (IKO) Name:Arena Standard (IKO)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2020-04-16 Effective:2020-04-16
Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD, THB, IKO Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD, THB, IKO

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (2020-06-04) Name:Arena Standard (2020-06-04)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2020-06-04 Effective:2020-06-04
Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD, THB, IKO Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD, THB, IKO

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (M21) Name:Arena Standard (M21)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2020-06-25 Effective:2020-06-25
Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD, THB, IKO, M21 Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD, THB, IKO, M21

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (2020-08-03) Name:Arena Standard (2020-08-03)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2020-08-03 Effective:2020-08-03
Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD, THB, IKO, M21 Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD, THB, IKO, M21

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (ANB) Name:Arena Standard (ANB)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2020-08-12 Effective:2020-08-12
Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD, THB, IKO, M21, ANB Sets:ANA, PANA, GRN, RNA, WAR, M20, ELD, THB, IKO, M21, ANB

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (ZNR) Name:Arena Standard (ZNR)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2020-09-17 Effective:2020-09-17
Sets:ANA, PANA, ELD, THB, IKO, M21, ANB, ZNR Sets:ANA, PANA, ELD, THB, IKO, M21, ANB, ZNR

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (2020-09-28) Name:Arena Standard (2020-09-28)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2020-09-28 Effective:2020-09-28
Sets:ANA, PANA, ELD, THB, IKO, M21, ANB, ZNR Sets:ANA, PANA, ELD, THB, IKO, M21, ANB, ZNR

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (2020-10-12) Name:Arena Standard (2020-10-12)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2020-10-12 Effective:2020-10-12
Sets:ANA, PANA, ELD, THB, IKO, M21, ANB, ZNR Sets:ANA, PANA, ELD, THB, IKO, M21, ANB, ZNR

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (KHM) Name:Arena Standard (KHM)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2021-01-28 Effective:2021-01-28
Sets:ANA, PANA, ELD, THB, IKO, M21, ANB, ZNR, KHM Sets:ANA, PANA, ELD, THB, IKO, M21, ANB, ZNR, KHM

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (STX) Name:Arena Standard (STX)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2021-04-15 Effective:2021-04-15
Sets:ANA, PANA, ELD, THB, IKO, M21, ANB, ZNR, KHM, STX Sets:ANA, PANA, ELD, THB, IKO, M21, ANB, ZNR, KHM, STX

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (AFR) Name:Arena Standard (AFR)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2021-07-08 Effective:2021-07-08
Sets:ANA, PANA, ELD, THB, IKO, M21, ANB, ZNR, KHM, STX, AFR Sets:ANA, PANA, ELD, THB, IKO, M21, ANB, ZNR, KHM, STX, AFR

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (MID) Name:Arena Standard (MID)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2021-09-16 Effective:2021-09-16
Sets:ANA, PANA, ANB, ZNR, KHM, STX, AFR, MID Sets:ANA, PANA, ANB, ZNR, KHM, STX, AFR, MID

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (VOW) Name:Arena Standard (VOW)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2021-11-17 Effective:2021-11-17
Sets:ANA, PANA, ANB, ZNR, KHM, STX, AFR, MID, VOW Sets:ANA, PANA, ANB, ZNR, KHM, STX, AFR, MID, VOW

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (2022-01-27) Name:Arena Standard (2022-01-27)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2022-01-27 Effective:2022-01-27
Sets:ANA, PANA, ANB, ZNR, KHM, STX, AFR, MID, VOW Sets:ANA, PANA, ANB, ZNR, KHM, STX, AFR, MID, VOW

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (NEO) Name:Arena Standard (NEO)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2022-02-10 Effective:2022-02-10
Sets:ANA, PANA, ANB, ZNR, KHM, STX, AFR, MID, VOW, NEO Sets:ANA, PANA, ANB, ZNR, KHM, STX, AFR, MID, VOW, NEO

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (2022-03-17) Name:Arena Standard (2022-03-17)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2022-03-17 Effective:2022-03-17
Sets:ZNR, KHM, STX, AFR, MID, VOW, NEO Sets:ZNR, KHM, STX, AFR, MID, VOW, NEO

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Arena Standard (SNC) Name:Arena Standard (SNC)
Type:Historic Type:Archived
Subtype:Arena Subtype:Arena
Effective:2022-04-28 Effective:2022-04-28
Sets:ZNR, KHM, STX, AFR, MID, VOW, NEO, SNC Sets:ZNR, KHM, STX, AFR, MID, VOW, NEO, SNC

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Amonkhet (AKH) Name:Block: Amonkhet (AKH)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2017-04-28 Effective:2017-04-28
Sets:AKH Sets:AKH

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Amonkhet (HOU) Name:Block: Amonkhet (HOU)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2017-07-14 Effective:2017-07-14
Sets:AKH, HOU Sets:AKH, HOU

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Battle for Zendikar (BFZ) Name:Block: Battle for Zendikar (BFZ)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2015-10-02 Effective:2015-10-02
Sets:BFZ Sets:BFZ

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Battle for Zendikar (OGW) Name:Block: Battle for Zendikar (OGW)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2016-01-22 Effective:2016-01-22
Sets:BFZ, OGW Sets:BFZ, OGW

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Ice Age (ALL) Name:Block: Ice Age (ALL)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:1996-10-01 Effective:1996-10-01
Sets:ICE, ALL Sets:ICE, ALL

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Ice Age (ICE) Name:Block: Ice Age (ICE)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:1997-05-01 Effective:1997-05-01
Sets:ICE Sets:ICE

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Ice Age (HML) Name:Block: Ice Age (HML)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:1997-07-01 Effective:1997-07-01
Sets:ICE, HML, ALL Sets:ICE, HML, ALL

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Ice Age (CSP) Name:Block: Ice Age (CSP)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2006-08-20 Effective:2006-08-20
Sets:ICE, ALL, CSP Sets:ICE, ALL, CSP

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Innistrad (ISD) Name:Block: Innistrad (ISD)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2011-09-30 Effective:2011-09-30
Sets:ISD Sets:ISD

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Innistrad (DKA) Name:Block: Innistrad (DKA)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2012-02-03 Effective:2012-02-03
Sets:ISD, DKA Sets:ISD, DKA

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Innistrad (2012-04-02) Name:Block: Innistrad (2012-04-02)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2012-04-02 Effective:2012-04-02
Sets:ISD, DKA Sets:ISD, DKA

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Innistrad (AVR) Name:Block: Innistrad (AVR)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2012-05-04 Effective:2012-05-04
Sets:ISD, DKA, AVR Sets:ISD, DKA, AVR

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Invasion (INV) Name:Block: Invasion (INV)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2000-11-01 Effective:2000-11-01
Sets:INV Sets:INV

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Invasion (PLS) Name:Block: Invasion (PLS)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2001-03-01 Effective:2001-03-01
Sets:INV, PLS Sets:INV, PLS

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Invasion (APC) Name:Block: Invasion (APC)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2001-07-01 Effective:2001-07-01
Sets:INV, PLS, APC Sets:INV, PLS, APC

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Ixalan (XLN) Name:Block: Ixalan (XLN)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2017-09-29 Effective:2017-09-29
Sets:XLN Sets:XLN

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Ixalan (RIX) Name:Block: Ixalan (RIX)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2018-01-19 Effective:2018-01-19
Sets:XLN, RIX Sets:XLN, RIX

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Kaladesh (KLD) Name:Block: Kaladesh (KLD)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2016-09-30 Effective:2016-09-30
Sets:KLD Sets:KLD

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Kaladesh (AER) Name:Block: Kaladesh (AER)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2017-01-20 Effective:2017-01-20
Sets:KLD, AER Sets:KLD, AER

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Kamigawa (CHK) Name:Block: Kamigawa (CHK)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2004-10-20 Effective:2004-10-20
Sets:CHK Sets:CHK

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Kamigawa (BOK) Name:Block: Kamigawa (BOK)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2005-02-20 Effective:2005-02-20
Sets:CHK, BOK Sets:CHK, BOK

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Kamigawa (SOK) Name:Block: Kamigawa (SOK)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2005-06-20 Effective:2005-06-20
Sets:CHK, BOK, SOK Sets:CHK, BOK, SOK

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Khans of Tarkir (KTK) Name:Block: Khans of Tarkir (KTK)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2014-09-26 Effective:2014-09-26
Sets:KTK Sets:KTK

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Khans of Tarkir (FRF) Name:Block: Khans of Tarkir (FRF)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2015-01-23 Effective:2015-01-23
Sets:KTK, FRF Sets:KTK, FRF

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Khans of Tarkir (DTK) Name:Block: Khans of Tarkir (DTK)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2015-03-27 Effective:2015-03-27
Sets:KTK, FRF, DTK Sets:KTK, FRF, DTK

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Lorwyn (LRW) Name:Block: Lorwyn (LRW)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2007-10-20 Effective:2007-10-20
Sets:LRW Sets:LRW

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Lorwyn (MOR) Name:Block: Lorwyn (MOR)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2008-02-01 Effective:2008-02-01
Sets:LRW, MOR Sets:LRW, MOR

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Lorwyn;Shadowmoor (SHM) Name:Block: Lorwyn;Shadowmoor (SHM)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2008-05-02 Effective:2008-05-02
Sets:LRW, MOR, SHM Sets:LRW, MOR, SHM

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Lorwyn;Shadowmoor (EVE) Name:Block: Lorwyn;Shadowmoor (EVE)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2008-07-25 Effective:2008-07-25
Sets:LRW, MOR, SHM, EVE Sets:LRW, MOR, SHM, EVE

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Masques (MMQ) Name:Block: Masques (MMQ)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:1999-11-01 Effective:1999-11-01
Sets:MMQ Sets:MMQ

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Masques (NMS) Name:Block: Masques (NMS)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2000-03-01 Effective:2000-03-01
Sets:MMQ, NMS Sets:MMQ, NMS

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Masques (PCY) Name:Block: Masques (PCY)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2000-07-01 Effective:2000-07-01
Sets:MMQ, NMS, PCY Sets:MMQ, NMS, PCY

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Mirage;Visions;Weatherlight (WTH) Name:Block: Mirage;Visions;Weatherlight (WTH)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:1997-07-01 Effective:1997-07-01
Sets:MIR, VIS, WTH Sets:MIR, VIS, WTH

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Mirrodin (MRD) Name:Block: Mirrodin (MRD)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2003-10-20 Effective:2003-10-20
Sets:MRD Sets:MRD

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Mirrodin (DST) Name:Block: Mirrodin (DST)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2004-02-20 Effective:2004-02-20
Sets:MRD, DST Sets:MRD, DST

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Mirrodin (5DN) Name:Block: Mirrodin (5DN)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2004-06-20 Effective:2004-06-20
Sets:MRD, DST, 5DN Sets:MRD, DST, 5DN

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Mirrodin (2006-03-20) Name:Block: Mirrodin (2006-03-20)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2006-03-20 Effective:2006-03-20
Sets:MRD, DST, 5DN Sets:MRD, DST, 5DN

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Odyssey (ODY) Name:Block: Odyssey (ODY)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2001-11-01 Effective:2001-11-01
Sets:ODY Sets:ODY

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Odyssey (TOR) Name:Block: Odyssey (TOR)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2002-03-01 Effective:2002-03-01
Sets:ODY, TOR Sets:ODY, TOR

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Odyssey (JUD) Name:Block: Odyssey (JUD)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2002-07-01 Effective:2002-07-01
Sets:ODY, TOR, JUD Sets:ODY, TOR, JUD

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Onslaught (ONS) Name:Block: Onslaught (ONS)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2002-11-01 Effective:2002-11-01
Sets:ONS Sets:ONS

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Onslaught (LGN) Name:Block: Onslaught (LGN)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2003-03-01 Effective:2003-03-01
Sets:ONS, LGN Sets:ONS, LGN

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Onslaught (SCG) Name:Block: Onslaught (SCG)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2003-07-01 Effective:2003-07-01
Sets:ONS, LGN, SCG Sets:ONS, LGN, SCG

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Tempest (TMP) Name:Block: Tempest (TMP)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:1997-11-01 Effective:1997-11-01
Sets:TMP Sets:TMP

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Tempest;Stronghold (TMP) Name:Block: Tempest;Stronghold (TMP)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:1998-04-01 Effective:1998-04-01
Sets:TMP, STH Sets:TMP, STH

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Tempest;Stronghold;Exodus (EXO) Name:Block: Tempest;Stronghold;Exodus (EXO)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:1998-07-01 Effective:1998-07-01
Sets:TMP, STH, EXO Sets:TMP, STH, EXO

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Ravnica (RAV) Name:Block: Ravnica (RAV)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2005-10-20 Effective:2005-10-20
Sets:RAV Sets:RAV

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Ravnica (GPT) Name:Block: Ravnica (GPT)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2006-02-20 Effective:2006-02-20
Sets:RAV, GPT Sets:RAV, GPT

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Ravnica (DIS) Name:Block: Ravnica (DIS)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2006-05-20 Effective:2006-05-20
Sets:RAV, GPT, DIS Sets:RAV, GPT, DIS

View File

@@ -1,6 +1,6 @@
[format] [format]
Name:Block: Return to Ravnica (RTR) Name:Block: Return to Ravnica (RTR)
Type:Historic Type:Archived
Subtype:Block Subtype:Block
Effective:2012-10-05 Effective:2012-10-05
Sets:RTR Sets:RTR

Some files were not shown because too many files have changed in this diff Show More