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 38bc51e2348..4ef999e53c8 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 @@ -106,7 +106,6 @@ public enum CSubmenuPreferences implements ICDoc { lstControls.add(Pair.of(view.getCbAltSoundSystem(), FPref.UI_ALT_SOUND_SYSTEM)); lstControls.add(Pair.of(view.getCbUiForTouchScreen(), FPref.UI_FOR_TOUCHSCREN)); lstControls.add(Pair.of(view.getCbTimedTargOverlay(), FPref.UI_TIMED_TARGETING_OVERLAY_UPDATES)); - lstControls.add(Pair.of(view.getCbTargOverlayDarkArrows(), FPref.UI_TARGETING_DARKER_PW_ARROWS)); lstControls.add(Pair.of(view.getCbCompactMainMenu(), FPref.UI_COMPACT_MAIN_MENU)); lstControls.add(Pair.of(view.getCbPromptFreeBlocks(), FPref.MATCHPREF_PROMPT_FREE_BLOCKS)); lstControls.add(Pair.of(view.getCbPauseWhileMinimized(), FPref.UI_PAUSE_WHILE_MINIMIZED)); 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 46a0749cdd6..ceea3a02647 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 @@ -80,7 +80,6 @@ public enum VSubmenuPreferences implements IVSubmenu { private final JCheckBox cbAltSoundSystem = new OptionsCheckBox("Use Alternate Sound System"); private final JCheckBox cbUiForTouchScreen = new OptionsCheckBox("Enhance UI for Touchscreens"); private final JCheckBox cbTimedTargOverlay = new OptionsCheckBox("Enable Targeting Overlay Optimization"); - private final JCheckBox cbTargOverlayDarkArrows = new OptionsCheckBox("Darker Arrows for Planeswalker Attackers"); private final JCheckBox cbCompactMainMenu = new OptionsCheckBox("Use Compact Main Sidebar Menu"); private final JCheckBox cbDetailedPaymentDesc = new OptionsCheckBox("Spell Description in Payment Prompt"); private final JCheckBox cbPromptFreeBlocks = new OptionsCheckBox("Free Block Handling"); @@ -279,9 +278,6 @@ public enum VSubmenuPreferences implements IVSubmenu { pnlPrefs.add(cbTimedTargOverlay, titleConstraints); pnlPrefs.add(new NoteLabel("Enables throttling-based optimization of targeting overlay to reduce CPU use (only disable if you experience choppiness on older hardware, requires starting a new match)."), descriptionConstraints); - pnlPrefs.add(cbTargOverlayDarkArrows, titleConstraints); - pnlPrefs.add(new NoteLabel("Makes the targeting overlay arrows darker for creatures attacking planeswalkers, to make those arrows easier to distinguish from the blocker arrows (requires a restart)."), descriptionConstraints); - pnlPrefs.add(cbpCounterDisplayType, comboBoxConstraints); pnlPrefs.add(new NoteLabel("Selects the style of the in-game counter display for cards. Text-based is a new tab-like display on the cards. Image-based is the old counter image. Hybrid displays both at once."), descriptionConstraints); @@ -644,11 +640,6 @@ public enum VSubmenuPreferences implements IVSubmenu { return cbTimedTargOverlay; } - /** @return {@link javax.swing.JCheckBox} */ - public JCheckBox getCbTargOverlayDarkArrows() { - return cbTargOverlayDarkArrows; - } - public final JCheckBox getCbUiForTouchScreen() { return cbUiForTouchScreen; } diff --git a/forge-gui-desktop/src/main/java/forge/screens/match/TargetingOverlay.java b/forge-gui-desktop/src/main/java/forge/screens/match/TargetingOverlay.java index b52da1b0650..90a9bfeeddf 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/match/TargetingOverlay.java +++ b/forge-gui-desktop/src/main/java/forge/screens/match/TargetingOverlay.java @@ -573,7 +573,6 @@ public class TargetingOverlay { super.paintComponent(g); final ArcState overlaystate = matchUI.getCDock().getArcState(); - final boolean darkerPWArrows = FModel.getPreferences().getPrefBoolean(FPref.UI_TARGETING_DARKER_PW_ARROWS); // Arcs are off if (overlaystate == ArcState.OFF) { return; } @@ -611,8 +610,10 @@ public class TargetingOverlay { if (colorCombat.getAlpha() == 0) { colorCombat = new Color(255, 0, 0, 153); } - // For planeswalker attackers, use a somewhat darker shade if the player opts in - Color colorCombatAtk = darkerPWArrows ? colorCombat.darker() : colorCombat; + Color colorCombatAtk = FSkin.getColor(FSkin.Colors.CLR_PWATTK_TARGETING_ARROW).getColor(); + if (colorCombatAtk.getAlpha() == 0) { + colorCombatAtk = new Color(255,138,1,153); + } drawArcs(g2d, colorOther, arcsFriend); drawArcs(g2d, colorCombatAtk, arcsFoeAtk); diff --git a/forge-gui-desktop/src/main/java/forge/toolbox/FSkin.java b/forge-gui-desktop/src/main/java/forge/toolbox/FSkin.java index 9e1c50ecc3a..0c8628339aa 100644 --- a/forge-gui-desktop/src/main/java/forge/toolbox/FSkin.java +++ b/forge-gui-desktop/src/main/java/forge/toolbox/FSkin.java @@ -357,7 +357,8 @@ public class FSkin { CLR_THEME2(FSkinProp.CLR_THEME2), CLR_OVERLAY(FSkinProp.CLR_OVERLAY), CLR_COMBAT_TARGETING_ARROW(FSkinProp.CLR_COMBAT_TARGETING_ARROW), - CLR_NORMAL_TARGETING_ARROW(FSkinProp.CLR_NORMAL_TARGETING_ARROW); + CLR_NORMAL_TARGETING_ARROW(FSkinProp.CLR_NORMAL_TARGETING_ARROW), + CLR_PWATTK_TARGETING_ARROW(FSkinProp.CLR_PWATTK_TARGETING_ARROW); private Color color; private final FSkinProp skinProp; diff --git a/forge-gui-mobile/src/forge/assets/FSkinColor.java b/forge-gui-mobile/src/forge/assets/FSkinColor.java index 5779482763c..5724b145525 100644 --- a/forge-gui-mobile/src/forge/assets/FSkinColor.java +++ b/forge-gui-mobile/src/forge/assets/FSkinColor.java @@ -22,7 +22,8 @@ public class FSkinColor { CLR_THEME2 (FSkinProp.CLR_THEME2), CLR_OVERLAY (FSkinProp.CLR_OVERLAY), CLR_COMBAT_TARGETING_ARROW (FSkinProp.CLR_COMBAT_TARGETING_ARROW), - CLR_NORMAL_TARGETING_ARROW (FSkinProp.CLR_NORMAL_TARGETING_ARROW); + CLR_NORMAL_TARGETING_ARROW (FSkinProp.CLR_NORMAL_TARGETING_ARROW), + CLR_PWATTK_TARGETING_ARROW (FSkinProp.CLR_PWATTK_TARGETING_ARROW); private Color color; private final int x, y; diff --git a/forge-gui-mobile/src/forge/screens/match/TargetingOverlay.java b/forge-gui-mobile/src/forge/screens/match/TargetingOverlay.java index 5792072c219..7b375a3f294 100644 --- a/forge-gui-mobile/src/forge/screens/match/TargetingOverlay.java +++ b/forge-gui-mobile/src/forge/screens/match/TargetingOverlay.java @@ -46,8 +46,6 @@ public class TargetingOverlay { } public static void updateColors() { - final boolean darkerPWArrows = FModel.getPreferences().getPrefBoolean(ForgePreferences.FPref.UI_TARGETING_DARKER_PW_ARROWS); - friendColor = FSkinColor.get(Colors.CLR_NORMAL_TARGETING_ARROW); if (friendColor.getAlpha() == 0) { friendColor = FSkinColor.get(Colors.CLR_ACTIVE).alphaColor(153f / 255f); @@ -58,7 +56,10 @@ public class TargetingOverlay { foeDefColor = FSkinColor.getStandardColor(new Color(1, 0, 0, 153 / 255f)); } - foeAtkColor = darkerPWArrows ? foeDefColor.darker().stepColor(-60) : foeDefColor; + foeAtkColor = FSkinColor.get(Colors.CLR_PWATTK_TARGETING_ARROW); + if (foeAtkColor.getAlpha() == 0) { + foeAtkColor = FSkinColor.getStandardColor(new Color(255 / 255f, 138 / 255f, 1 / 255f, 153 / 255f)); + } } private TargetingOverlay() { diff --git a/forge-gui-mobile/src/forge/screens/settings/SettingsPage.java b/forge-gui-mobile/src/forge/screens/settings/SettingsPage.java index 7dcddb57115..a918bfb03ef 100644 --- a/forge-gui-mobile/src/forge/screens/settings/SettingsPage.java +++ b/forge-gui-mobile/src/forge/screens/settings/SettingsPage.java @@ -139,10 +139,6 @@ public class SettingsPage extends TabPage { "Use Escape Key To End Turn", "Allows to use Esc keyboard shortcut to end turn prematurely"), 1); - lstSettings.addItem(new BooleanSetting(FPref.UI_TARGETING_DARKER_PW_ARROWS, - "Darker Arrows for Planeswalker Attackers", - "Makes targeting arrows darker for creatures attacking planeswalkers (requires restart)."), - 1); //Random Deck Generation lstSettings.addItem(new BooleanSetting(FPref.DECKGEN_NOSMALL, diff --git a/forge-gui/res/skins/default/sprite_icons.png b/forge-gui/res/skins/default/sprite_icons.png index 59ffba90b74..3aa2bba6d5f 100644 Binary files a/forge-gui/res/skins/default/sprite_icons.png and b/forge-gui/res/skins/default/sprite_icons.png differ diff --git a/forge-gui/src/main/java/forge/assets/FSkinProp.java b/forge-gui/src/main/java/forge/assets/FSkinProp.java index 691d690a888..4167f4ed240 100644 --- a/forge-gui/src/main/java/forge/assets/FSkinProp.java +++ b/forge-gui/src/main/java/forge/assets/FSkinProp.java @@ -44,6 +44,7 @@ public enum FSkinProp { CLR_OVERLAY (new int[] {70, 250}, PropType.COLOR), CLR_COMBAT_TARGETING_ARROW (new int[] {70, 270}, PropType.COLOR), CLR_NORMAL_TARGETING_ARROW (new int[] {70, 290}, PropType.COLOR), + CLR_PWATTK_TARGETING_ARROW (new int[] {70, 310}, PropType.COLOR), //zone images IMG_ZONE_HAND (new int[] {280, 40, 40, 40}, PropType.IMAGE), diff --git a/forge-gui/src/main/java/forge/properties/ForgePreferences.java b/forge-gui/src/main/java/forge/properties/ForgePreferences.java index eb18fdfda7d..1961c3acf05 100644 --- a/forge-gui/src/main/java/forge/properties/ForgePreferences.java +++ b/forge-gui/src/main/java/forge/properties/ForgePreferences.java @@ -72,7 +72,6 @@ public class ForgePreferences extends PreferencesStore { UI_PREFERRED_AVATARS_ONLY ("false"), UI_TARGETING_OVERLAY ("0"), UI_TIMED_TARGETING_OVERLAY_UPDATES ("true"), - UI_TARGETING_DARKER_PW_ARROWS ("true"), UI_ENABLE_SOUNDS ("true"), UI_ENABLE_MUSIC ("true"), UI_ALT_SOUND_SYSTEM ("false"),