From 2808b4945e264c461ee65b64593c9f2a66bc4810 Mon Sep 17 00:00:00 2001 From: leriomaggio Date: Sun, 11 Jul 2021 19:03:50 +0100 Subject: [PATCH] New Option in Forge Preference to enable the use of custom cards A new Option has been added in Forge Preferences to enable the use of custom cards. This option (default is False for backward compatibility) will control whether custom cards can be read in custom editions, and so decks containing them can be used in game matches. Also, en-US translation file received an update to clarify what is intended with Unknonw cards (to be distinguished from custom cards now) --- .../forge/screens/home/settings/CSubmenuPreferences.java | 1 + .../forge/screens/home/settings/VSubmenuPreferences.java | 8 ++++++++ forge-gui/res/languages/en-US.properties | 4 +++- .../forge/localinstance/properties/ForgePreferences.java | 1 + 4 files changed, 13 insertions(+), 1 deletion(-) diff --git a/forge-gui-desktop/src/main/java/forge/screens/home/settings/CSubmenuPreferences.java b/forge-gui-desktop/src/main/java/forge/screens/home/settings/CSubmenuPreferences.java index 08a3f485aee..92f5500ffa5 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/home/settings/CSubmenuPreferences.java +++ b/forge-gui-desktop/src/main/java/forge/screens/home/settings/CSubmenuPreferences.java @@ -136,6 +136,7 @@ public enum CSubmenuPreferences implements ICDoc { lstControls.add(Pair.of(view.getCbEnableAICheats(), FPref.UI_ENABLE_AI_CHEATS)); lstControls.add(Pair.of(view.getCbEnableUnknownCards(), FPref.UI_LOAD_UNKNOWN_CARDS)); lstControls.add(Pair.of(view.getCbEnableNonLegalCards(), FPref.UI_LOAD_NONLEGAL_CARDS)); + lstControls.add(Pair.of(view.getCbEnableCustomCards(), FPref.UI_LOAD_CUSTOM_CARDS)); lstControls.add(Pair.of(view.getCbUseExperimentalNetworkStream(), FPref.UI_NETPLAY_COMPAT)); lstControls.add(Pair.of(view.getCbImageFetcher(), FPref.UI_ENABLE_ONLINE_IMAGE_FETCHER)); lstControls.add(Pair.of(view.getCbDisableCardImages(), FPref.UI_DISABLE_CARD_IMAGES)); diff --git a/forge-gui-desktop/src/main/java/forge/screens/home/settings/VSubmenuPreferences.java b/forge-gui-desktop/src/main/java/forge/screens/home/settings/VSubmenuPreferences.java index 88607bcf411..0b3212867ed 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/home/settings/VSubmenuPreferences.java +++ b/forge-gui-desktop/src/main/java/forge/screens/home/settings/VSubmenuPreferences.java @@ -124,6 +124,7 @@ public enum VSubmenuPreferences implements IVSubmenu { private final JCheckBox cbUseSentry = new OptionsCheckBox(localizer.getMessage("cbUseSentry")); private final JCheckBox cbEnableUnknownCards = new OptionsCheckBox(localizer.getMessage("lblEnableUnknownCards")); private final JCheckBox cbEnableNonLegalCards = new OptionsCheckBox(localizer.getMessage("lblEnableNonLegalCards")); + private final JCheckBox cbEnableCustomCards = new OptionsCheckBox(localizer.getMessage("lblEnableCustomCards")); private final JCheckBox cbUseExperimentalNetworkStream = new OptionsCheckBox(localizer.getMessage("lblExperimentalNetworkCompatibility")); private final Map shortcutFields = new HashMap<>(); @@ -316,6 +317,9 @@ public enum VSubmenuPreferences implements IVSubmenu { pnlPrefs.add(cbEnableNonLegalCards, titleConstraints); pnlPrefs.add(new NoteLabel(localizer.getMessage("nlEnableNonLegalCards")), descriptionConstraints); + pnlPrefs.add(cbEnableCustomCards, titleConstraints); + pnlPrefs.add(new NoteLabel(localizer.getMessage("nlEnableCustomCards")), descriptionConstraints); + pnlPrefs.add(cbUseExperimentalNetworkStream, titleConstraints); pnlPrefs.add(new NoteLabel(localizer.getMessage("nlExperimentalNetworkCompatibility")), descriptionConstraints); @@ -627,6 +631,10 @@ public enum VSubmenuPreferences implements IVSubmenu { public JCheckBox getCbEnableNonLegalCards() { return cbEnableNonLegalCards; } + /** @return {@link javax.swing.JCheckBox} */ + public JCheckBox getCbEnableCustomCards() { + return cbEnableCustomCards; + } /** @return {@link javax.swing.JCheckBox} */ public JCheckBox getCbUseExperimentalNetworkStream() { diff --git a/forge-gui/res/languages/en-US.properties b/forge-gui/res/languages/en-US.properties index fe34cef49a7..67d810d2411 100644 --- a/forge-gui/res/languages/en-US.properties +++ b/forge-gui/res/languages/en-US.properties @@ -1031,9 +1031,11 @@ nlMatchScrollIndicator=When enabled, show the scroll indicator on the match scre lblShowFPSDisplay=Show FPS Display nlShowFPSDisplay=When enabled, show the FPS Display (Experimental). lblEnableUnknownCards=Enable Unknown Cards -nlEnableUnknownCards=Enable Unknown Cards to be loaded to Unknown Set. (Requires restart) +nlEnableUnknownCards=Enable loading cards not found in any edition to be matched to UNKNOWN Set. (Requires restart) lblEnableNonLegalCards=Enable Non-Legal Cards nlEnableNonLegalCards=Enable Non-Legal Cards like Un-sets and PlayTest Cards. (Requires restart) +lblEnableCustomCards=Enable Custom Cards +nlEnableCustomCards=Enable Custom Cards to be used in Decks and Games. (Requires restart) lblDisableCardImages=Disable Card Images nlDisableCardImages=When enabled, Forge will not display card images. lblExperimentalNetworkCompatibility=Experimental Network Compatibility diff --git a/forge-gui/src/main/java/forge/localinstance/properties/ForgePreferences.java b/forge-gui/src/main/java/forge/localinstance/properties/ForgePreferences.java index 1fcf0e13df7..66275c7c800 100644 --- a/forge-gui/src/main/java/forge/localinstance/properties/ForgePreferences.java +++ b/forge-gui/src/main/java/forge/localinstance/properties/ForgePreferences.java @@ -153,6 +153,7 @@ public class ForgePreferences extends PreferencesStore { UI_ENABLE_DISPOSE_TEXTURES("false"), UI_LOAD_UNKNOWN_CARDS("true"), UI_LOAD_NONLEGAL_CARDS("true"), + UI_LOAD_CUSTOM_CARDS("false"), UI_AUTO_CACHE_SIZE("false"), UI_ALLOW_ORDER_GRAVEYARD_WHEN_NEEDED ("Never"), UI_DEFAULT_FONT_SIZE("12"),