diff --git a/forge-gui-desktop/src/main/java/forge/itemmanager/CardManager.java b/forge-gui-desktop/src/main/java/forge/itemmanager/CardManager.java index 84032c93c96..2b3985078d4 100644 --- a/forge-gui-desktop/src/main/java/forge/itemmanager/CardManager.java +++ b/forge-gui-desktop/src/main/java/forge/itemmanager/CardManager.java @@ -6,6 +6,7 @@ import forge.item.PaperCard; import forge.itemmanager.filters.*; import forge.model.FModel; import forge.quest.QuestWorld; +import forge.quest.data.QuestPreferences; import forge.screens.home.quest.DialogChooseSets; import forge.screens.match.controllers.CDetailPicture; @@ -63,6 +64,14 @@ public class CardManager extends ItemManager { itemManager.addFilter(new CardColorFilter(itemManager)); itemManager.addFilter(new CardTypeFilter(itemManager)); itemManager.addFilter(new CardCMCFilter(itemManager)); + if (FModel.getQuestPreferences() + .getPrefInt(QuestPreferences.QPref.FOIL_FILTER_DEFAULT) == 1) { + itemManager.addFilter(new CardFoilFilter(itemManager)); + } + if (FModel.getQuestPreferences() + .getPrefInt(QuestPreferences.QPref.RATING_FILTER_DEFAULT) == 1) { + itemManager.addFilter(new CardRatingFilter(itemManager)); + } } public static ItemFilter createSearchFilter(final ItemManager itemManager) { diff --git a/forge-gui-desktop/src/main/java/forge/screens/home/quest/VSubmenuQuestPrefs.java b/forge-gui-desktop/src/main/java/forge/screens/home/quest/VSubmenuQuestPrefs.java index 51fc7ec0348..d477155be8d 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/home/quest/VSubmenuQuestPrefs.java +++ b/forge-gui-desktop/src/main/java/forge/screens/home/quest/VSubmenuQuestPrefs.java @@ -448,6 +448,12 @@ public enum VSubmenuQuestPrefs implements IVSubmenu { pnlShop.add(new FLabel.Builder().text("Item Level Restriction").fontAlign(SwingConstants.RIGHT).build(), labelConstraints); pnlShop.add(new PrefInput(QPref.ITEM_LEVEL_RESTRICTION, QuestPreferencesErrType.SHOP), fieldConstraints); + pnlShop.add(new FLabel.Builder().text("Foil filter Always On").fontAlign(SwingConstants.RIGHT).build(), labelConstraints); + pnlShop.add(new PrefInput(QPref.FOIL_FILTER_DEFAULT, QuestPreferencesErrType.SHOP), fieldConstraints); + + pnlShop.add(new FLabel.Builder().text("Ratings filter Always On").fontAlign(SwingConstants.RIGHT).build(), labelConstraints); + pnlShop.add(new PrefInput(QPref.RATING_FILTER_DEFAULT, QuestPreferencesErrType.SHOP), fieldConstraints); + } private void populateDraftTournaments() { diff --git a/forge-gui/src/main/java/forge/quest/data/QuestPreferences.java b/forge-gui/src/main/java/forge/quest/data/QuestPreferences.java index dcdb7402baa..0442d2ddb7e 100644 --- a/forge-gui/src/main/java/forge/quest/data/QuestPreferences.java +++ b/forge-gui/src/main/java/forge/quest/data/QuestPreferences.java @@ -182,7 +182,9 @@ public class QuestPreferences extends PreferencesStore i ITEM_LEVEL_RESTRICTION("1"), SIMULATE_AI_VS_AI_RESULTS("0"), - DRAFT_ROTATION("0"); + DRAFT_ROTATION("0"), + FOIL_FILTER_DEFAULT("0"), + RATING_FILTER_DEFAULT("1"); private final String strDefaultVal; @@ -287,6 +289,8 @@ public class QuestPreferences extends PreferencesStore i break; case DRAFT_ROTATION: case SPECIAL_BOOSTERS: + case FOIL_FILTER_DEFAULT: + case RATING_FILTER_DEFAULT: case ITEM_LEVEL_RESTRICTION: if (val != 0 && val != 1) { return "Only values 0 or 1 are acceptable; 1 for enabled, 0 for disabled.";