From da81e194dd7dffbc456be0450e6e7ccd0c43eec6 Mon Sep 17 00:00:00 2001 From: drdev Date: Tue, 29 Sep 2015 22:38:56 +0000 Subject: [PATCH] Remove unused restrictedCatalog parameter Refactor quest default land set logic to be re-usable by mobile app --- .../deckeditor/AddBasicLandsDialog.java | 6 +--- .../controllers/CEditorCommander.java | 2 +- .../controllers/CEditorConstructed.java | 6 ++-- .../controllers/CEditorLimited.java | 7 ++-- .../deckeditor/controllers/CEditorQuest.java | 36 +++++-------------- .../controllers/CEditorQuestLimited.java | 2 +- .../controllers/CEditorVariant.java | 2 +- .../controllers/CEditorWinstonProcess.java | 2 +- .../src/forge/deck/AddBasicLandsDialog.java | 3 -- .../src/forge/deck/FDeckEditor.java | 3 ++ .../java/forge/quest/QuestController.java | 14 ++++++++ 11 files changed, 36 insertions(+), 47 deletions(-) diff --git a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/AddBasicLandsDialog.java b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/AddBasicLandsDialog.java index 6d0801bb02a..93e394856a9 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/AddBasicLandsDialog.java +++ b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/AddBasicLandsDialog.java @@ -51,7 +51,6 @@ import forge.toolbox.FOptionPane; import forge.toolbox.FSkin; import forge.toolbox.FTextField; import forge.toolbox.FSkin.SkinnedPanel; -import forge.util.ItemPool; import forge.view.arcane.CardPanel; @@ -80,12 +79,9 @@ public class AddBasicLandsDialog { private CardEdition landSet; public AddBasicLandsDialog(Deck deck0) { - this(deck0, null, null); + this(deck0, null); } public AddBasicLandsDialog(Deck deck0, CardEdition defaultLandSet) { - this(deck0, defaultLandSet, null); - } - public AddBasicLandsDialog(Deck deck0, CardEdition defaultLandSet, ItemPool restrictedCatalog0) { deck = deck0; if (defaultLandSet == null) { diff --git a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorCommander.java b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorCommander.java index 6ad9b9c4f08..3e5aaf25565 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorCommander.java +++ b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorCommander.java @@ -94,7 +94,7 @@ public final class CEditorCommander extends ACEditorBase { getBtnAddBasicLands().setCommand(new UiCommand() { @Override public void run() { - CEditorConstructed.addBasicLands(CEditorCommander.this, null); + CEditorConstructed.addBasicLands(CEditorCommander.this); } }); } diff --git a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorConstructed.java b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorConstructed.java index 1cdbe2e9633..e5dd1aaba00 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorConstructed.java +++ b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorConstructed.java @@ -99,7 +99,7 @@ public final class CEditorConstructed extends ACEditorBase { getBtnAddBasicLands().setCommand(new UiCommand() { @Override public void run() { - CEditorConstructed.addBasicLands(CEditorConstructed.this, null); + CEditorConstructed.addBasicLands(CEditorConstructed.this); } }); } @@ -332,7 +332,7 @@ public final class CEditorConstructed extends ACEditorBase { this.controller.updateCaptions(); } - public static void addBasicLands(ACEditorBase editor, ItemPool restrictedCatalog) { + public static void addBasicLands(ACEditorBase editor) { Deck deck = editor.getDeckController().getModel(); if (deck == null) { return; } @@ -345,7 +345,7 @@ public final class CEditorConstructed extends ACEditorBase { CardEdition randomLandSet = CardEdition.Predicates.getRandomSetWithAllBasicLands(availableEditions); CardEdition defaultLandSet = randomLandSet == null ? FModel.getMagicDb().getEditions().get("ZEN") : randomLandSet; - AddBasicLandsDialog dialog = new AddBasicLandsDialog(deck, defaultLandSet, restrictedCatalog); + AddBasicLandsDialog dialog = new AddBasicLandsDialog(deck, defaultLandSet); CardPool landsToAdd = dialog.show(); if (landsToAdd != null) { editor.onAddItems(landsToAdd, false); diff --git a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorLimited.java b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorLimited.java index 8549f6bbca5..40aeb75af3d 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorLimited.java +++ b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorLimited.java @@ -39,7 +39,6 @@ import forge.screens.deckeditor.views.VDeckgen; import forge.screens.home.sanctioned.CSubmenuDraft; import forge.screens.home.sanctioned.CSubmenuSealed; import forge.screens.match.controllers.CDetailPicture; -import forge.util.ItemPool; import forge.util.storage.IStorage; import java.util.Map.Entry; @@ -91,7 +90,7 @@ public final class CEditorLimited extends ACEditorBase { getBtnAddBasicLands().setCommand(new UiCommand() { @Override public void run() { - CEditorLimited.addBasicLands(CEditorLimited.this, null); + CEditorLimited.addBasicLands(CEditorLimited.this); } }); } @@ -169,12 +168,12 @@ public final class CEditorLimited extends ACEditorBase { return this.controller; } - public static void addBasicLands(ACEditorBase editor, ItemPool restrictedCatalog) { + public static void addBasicLands(ACEditorBase editor) { Deck deck = editor.getDeckController().getModel().getHumanDeck(); if (deck == null) { return; } CardEdition defaultLandSet = StaticData.instance().getEditions().getEarliestEditionWithAllCards(deck.getAllCardsInASinglePool()); - AddBasicLandsDialog dialog = new AddBasicLandsDialog(deck, defaultLandSet, restrictedCatalog); + AddBasicLandsDialog dialog = new AddBasicLandsDialog(deck, defaultLandSet); CardPool landsToAdd = dialog.show(); if (landsToAdd != null) { editor.onAddItems(landsToAdd, false); diff --git a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorQuest.java b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorQuest.java index e112e11b3f3..fa3ad0bc6ce 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorQuest.java +++ b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorQuest.java @@ -25,10 +25,7 @@ import java.util.Map.Entry; import com.google.common.base.Function; import com.google.common.base.Supplier; -import com.google.common.collect.Lists; - import forge.UiCommand; -import forge.card.CardEdition; import forge.deck.CardPool; import forge.deck.Deck; import forge.deck.DeckSection; @@ -43,7 +40,6 @@ import forge.itemmanager.views.ItemTableColumn; import forge.model.FModel; import forge.properties.ForgePreferences.FPref; import forge.quest.QuestController; -import forge.quest.data.GameFormatQuest; import forge.screens.deckeditor.AddBasicLandsDialog; import forge.screens.deckeditor.SEditorIO; import forge.screens.deckeditor.views.VAllDecks; @@ -65,7 +61,6 @@ import forge.util.ItemPool; */ public final class CEditorQuest extends ACEditorBase { private final QuestController questData; - private static GameFormatQuest questFormat; private final DeckController controller; private final List allSections = new ArrayList(); private DragCell allDecksParent = null; @@ -128,8 +123,14 @@ public final class CEditorQuest extends ACEditorBase { getBtnAddBasicLands().setCommand(new UiCommand() { @Override public void run() { - questFormat = questData.getFormat(); - CEditorQuest.addBasicLands(CEditorQuest.this, questData.getCards().getCardpool()); + Deck deck = getDeckController().getModel(); + if (deck == null) { return; } + + AddBasicLandsDialog dialog = new AddBasicLandsDialog(deck, questData.getDefaultLandSet()); + CardPool landsToAdd = dialog.show(); + if (landsToAdd != null) { + onAddItems(landsToAdd, false); + } } }); } @@ -307,25 +308,4 @@ public final class CEditorQuest extends ACEditorBase { allDecksParent.addDoc(VAllDecks.SINGLETON_INSTANCE); } } - - public static void addBasicLands(ACEditorBase editor, ItemPool restrictedCatalog) { - Deck deck = editor.getDeckController().getModel(); - if (deck == null) { return; } - - List availableEditionCodes = questFormat != null ? questFormat.getAllowedSetCodes() : Lists.newArrayList(FModel.getMagicDb().getEditions().getItemNames()); - List availableEditions = new ArrayList<>(); - - for (String s : availableEditionCodes) { - availableEditions.add(FModel.getMagicDb().getEditions().get(s)); - } - - CardEdition randomLandSet = CardEdition.Predicates.getRandomSetWithAllBasicLands(availableEditions); - CardEdition defaultLandSet = randomLandSet == null ? FModel.getMagicDb().getEditions().get("ZEN") : randomLandSet; - - AddBasicLandsDialog dialog = new AddBasicLandsDialog(deck, defaultLandSet, restrictedCatalog); - CardPool landsToAdd = dialog.show(); - if (landsToAdd != null) { - editor.onAddItems(landsToAdd, false); - } - } } diff --git a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorQuestLimited.java b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorQuestLimited.java index 5c38cde453f..7d6cc7db5d9 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorQuestLimited.java +++ b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorQuestLimited.java @@ -125,7 +125,7 @@ public final class CEditorQuestLimited extends ACEditorBase { getBtnAddBasicLands().setCommand(new UiCommand() { @Override public void run() { - CEditorConstructed.addBasicLands(CEditorVariant.this, null); + CEditorConstructed.addBasicLands(CEditorVariant.this); } }); } diff --git a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorWinstonProcess.java b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorWinstonProcess.java index e8656454850..6cdfea51d93 100644 --- a/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorWinstonProcess.java +++ b/forge-gui-desktop/src/main/java/forge/screens/deckeditor/controllers/CEditorWinstonProcess.java @@ -95,7 +95,7 @@ public class CEditorWinstonProcess extends ACEditorBase { getBtnAddBasicLands().setCommand(new UiCommand() { @Override public void run() { - CEditorLimited.addBasicLands(CEditorWinstonProcess.this, null); + CEditorLimited.addBasicLands(CEditorWinstonProcess.this); } }); } diff --git a/forge-gui-mobile/src/forge/deck/AddBasicLandsDialog.java b/forge-gui-mobile/src/forge/deck/AddBasicLandsDialog.java index 7da3d88106f..76250a2ab6e 100644 --- a/forge-gui-mobile/src/forge/deck/AddBasicLandsDialog.java +++ b/forge-gui-mobile/src/forge/deck/AddBasicLandsDialog.java @@ -92,9 +92,6 @@ public class AddBasicLandsDialog extends FDialog { private CardEdition landSet; public AddBasicLandsDialog(Deck deck, CardEdition defaultLandSet, final Callback callback0) { - this(deck, defaultLandSet, null, callback0); - } - public AddBasicLandsDialog(Deck deck, CardEdition defaultLandSet, CardPool restrictedCatalog0, final Callback callback0) { super("Add Basic Lands \n" + deck.getName(), 2); callback = callback0; diff --git a/forge-gui-mobile/src/forge/deck/FDeckEditor.java b/forge-gui-mobile/src/forge/deck/FDeckEditor.java index 368d770b622..108c1cf0310 100644 --- a/forge-gui-mobile/src/forge/deck/FDeckEditor.java +++ b/forge-gui-mobile/src/forge/deck/FDeckEditor.java @@ -286,6 +286,9 @@ public class FDeckEditor extends TabPageScreen { //use most recent edition that all cards in limited pool came before or in defaultLandSet = StaticData.instance().getEditions().getEarliestEditionWithAllCards(deck.getAllCardsInASinglePool()); break; + case Quest: + defaultLandSet = FModel.getQuest().getDefaultLandSet(); + break; default: //TODO: Support loading/saving default land set for non-limited decks defaultLandSet = StaticData.instance().getEditions().get("ZEN"); diff --git a/forge-gui/src/main/java/forge/quest/QuestController.java b/forge-gui/src/main/java/forge/quest/QuestController.java index aa3dfd8398a..c03b4cf904d 100644 --- a/forge-gui/src/main/java/forge/quest/QuestController.java +++ b/forge-gui/src/main/java/forge/quest/QuestController.java @@ -27,8 +27,10 @@ import java.util.TreeMap; import com.google.common.base.Predicate; import com.google.common.base.Predicates; +import com.google.common.collect.Lists; import com.google.common.eventbus.Subscribe; +import forge.card.CardEdition; import forge.deck.Deck; import forge.deck.DeckGroup; import forge.game.GameFormat; @@ -535,4 +537,16 @@ public class QuestController { achievements.setCurrentChallenges(availableChallengeIds); save(); } + + public CardEdition getDefaultLandSet() { + List availableEditionCodes = questFormat != null ? questFormat.getAllowedSetCodes() : Lists.newArrayList(FModel.getMagicDb().getEditions().getItemNames()); + List availableEditions = new ArrayList<>(); + + for (String s : availableEditionCodes) { + availableEditions.add(FModel.getMagicDb().getEditions().get(s)); + } + + CardEdition randomLandSet = CardEdition.Predicates.getRandomSetWithAllBasicLands(availableEditions); + return randomLandSet == null ? FModel.getMagicDb().getEditions().get("ZEN") : randomLandSet; + } }