From 36a8c93bc8757c09bcaad80938bdb5ef09640ca5 Mon Sep 17 00:00:00 2001 From: Northmoc Date: Thu, 30 Sep 2021 12:12:48 -0400 Subject: [PATCH] setting up the pref --- forge-game/src/main/java/forge/game/card/Card.java | 1 + .../forge/screens/home/settings/CSubmenuPreferences.java | 1 + .../forge/screens/home/settings/VSubmenuPreferences.java | 9 +++++++++ .../src/forge/screens/settings/SettingsPage.java | 4 ++++ forge-gui/res/languages/en-US.properties | 2 ++ 5 files changed, 17 insertions(+) diff --git a/forge-game/src/main/java/forge/game/card/Card.java b/forge-game/src/main/java/forge/game/card/Card.java index b22045ff580..16ded8bfd62 100644 --- a/forge-game/src/main/java/forge/game/card/Card.java +++ b/forge-game/src/main/java/forge/game/card/Card.java @@ -2223,6 +2223,7 @@ public class Card extends GameEntity implements Comparable, IHasSVars { public String getAbilityText(final CardState state) { final String linebreak = "\r\n\r\n"; + //TODO magic needs to happen here final String grayTag = ""; final String endTag = ""; final CardTypeView type = state.getType(); 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 21e3089886d..39e16160f03 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 @@ -157,6 +157,7 @@ public enum CSubmenuPreferences implements ICDoc { lstControls.add(Pair.of(view.getCbManaLostPrompt(), FPref.UI_MANA_LOST_PROMPT)); lstControls.add(Pair.of(view.getCbEscapeEndsTurn(), FPref.UI_ALLOW_ESC_TO_END_TURN)); lstControls.add(Pair.of(view.getCbDetailedPaymentDesc(), FPref.UI_DETAILED_SPELLDESC_IN_PROMPT)); + lstControls.add(Pair.of(view.getCbGrayText(), FPref.UI_GRAY_INACTIVE_TEXT)); lstControls.add(Pair.of(view.getCbPreselectPrevAbOrder(), FPref.UI_PRESELECT_PREVIOUS_ABILITY_ORDER)); lstControls.add(Pair.of(view.getCbShowStormCount(), FPref.UI_SHOW_STORM_COUNT_IN_PROMPT)); lstControls.add(Pair.of(view.getCbRemindOnPriority(), FPref.UI_REMIND_ON_PRIORITY)); 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 413422e599e..6e470861937 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 @@ -96,6 +96,7 @@ public enum VSubmenuPreferences implements IVSubmenu { private final JCheckBox cbTimedTargOverlay = new OptionsCheckBox(localizer.getMessage("cbTimedTargOverlay")); private final JCheckBox cbCompactMainMenu = new OptionsCheckBox(localizer.getMessage("cbCompactMainMenu")); private final JCheckBox cbDetailedPaymentDesc = new OptionsCheckBox(localizer.getMessage("cbDetailedPaymentDesc")); + private final JCheckBox cbGrayText = new OptionsCheckBox(localizer.getMessage("cbGrayText")); private final JCheckBox cbPromptFreeBlocks = new OptionsCheckBox(localizer.getMessage("cbPromptFreeBlocks")); private final JCheckBox cbPauseWhileMinimized = new OptionsCheckBox(localizer.getMessage("cbPauseWhileMinimized")); private final JCheckBox cbCompactPrompt = new OptionsCheckBox(localizer.getMessage("cbCompactPrompt")); @@ -247,6 +248,9 @@ public enum VSubmenuPreferences implements IVSubmenu { pnlPrefs.add(cbDetailedPaymentDesc, titleConstraints); pnlPrefs.add(new NoteLabel(localizer.getMessage("nlDetailedPaymentDesc")), descriptionConstraints); + pnlPrefs.add(cbGrayText, titleConstraints); + pnlPrefs.add(new NoteLabel(localizer.getMessage("nlGrayText")), descriptionConstraints); + pnlPrefs.add(cbShowStormCount, titleConstraints); pnlPrefs.add(new NoteLabel(localizer.getMessage("nlShowStormCount")), descriptionConstraints); @@ -901,6 +905,11 @@ public enum VSubmenuPreferences implements IVSubmenu { return cbDetailedPaymentDesc; } + public final JCheckBox getCbGrayText() { + return cbGrayText; + } + + public final JCheckBox getCbShowStormCount() { return cbShowStormCount; } diff --git a/forge-gui-mobile/src/forge/screens/settings/SettingsPage.java b/forge-gui-mobile/src/forge/screens/settings/SettingsPage.java index b5545b49152..af6d06c2310 100644 --- a/forge-gui-mobile/src/forge/screens/settings/SettingsPage.java +++ b/forge-gui-mobile/src/forge/screens/settings/SettingsPage.java @@ -211,6 +211,10 @@ public class SettingsPage extends TabPage { localizer.getMessage("cbDetailedPaymentDesc"), localizer.getMessage("nlDetailedPaymentDesc")), 1); + lstSettings.addItem(new BooleanSetting(FPref.UI_GRAY_INACTIVE_TEXT, + localizer.getMessage("cbGrayText"), + localizer.getMessage("nlGrayText")), + 1); lstSettings.addItem(new BooleanSetting(FPref.UI_SHOW_STORM_COUNT_IN_PROMPT, localizer.getMessage("cbShowStormCount"), localizer.getMessage("nlShowStormCount")), diff --git a/forge-gui/res/languages/en-US.properties b/forge-gui/res/languages/en-US.properties index 7376e81af85..20a328ab5eb 100644 --- a/forge-gui/res/languages/en-US.properties +++ b/forge-gui/res/languages/en-US.properties @@ -92,6 +92,7 @@ cbUiForTouchScreen=Enhance UI for Touchscreens cbTimedTargOverlay=Enable Targeting Overlay Optimization cbCompactMainMenu=Use Compact Main Sidebar Menu cbDetailedPaymentDesc=Spell Description in Payment Prompt +cbGrayText=Gray out unmet conditions in card text cbPromptFreeBlocks=Free Block Handling cbPauseWhileMinimized=Pause While Minimized cbCompactPrompt=Compact Prompt @@ -157,6 +158,7 @@ nlPromptFreeBlocks=When enabled, if you would have to pay 0 to block, pay automa nlPauseWhileMinimized=When enabled, Forge pauses when minimized (primarily for AI vs AI). nlEscapeEndsTurn=When enabled, Escape key functions as an alternative shortcut to end the current turn. nlDetailedPaymentDesc=When enabled, detailed spell/ability descriptions are shown when choosing targets and paying costs. +nlGrayText=When enabled, ability text with unmet conditions will be grayed out in the card's detail pane. nlShowStormCount=When enabled, displays the current storm count in the prompt pane. nlRemindOnPriority=When enabled, flashes the player choice area upon receiving priority. nlPreselectPrevAbOrder=When enabled, preselects the last defined simultaneous ability order in the ordering dialog.