diff --git a/.gitattributes b/.gitattributes index 7c4f36466a5..7359de2f9dd 100644 --- a/.gitattributes +++ b/.gitattributes @@ -11263,15 +11263,14 @@ src/main/java/forge/gui/ListChooser.java svneol=native#text/plain src/main/java/forge/gui/MultiLineLabel.java svneol=native#text/plain src/main/java/forge/gui/MultiLineLabelUI.java svneol=native#text/plain src/main/java/forge/gui/MultiPhaseProgressMonitorWithETA.java svneol=native#text/plain +src/main/java/forge/gui/deckeditor/DeckController.java -text src/main/java/forge/gui/deckeditor/DeckEditorBase.java -text src/main/java/forge/gui/deckeditor/DeckEditorConstructed.java svneol=native#text/plain src/main/java/forge/gui/deckeditor/DeckEditorLimited.java -text src/main/java/forge/gui/deckeditor/DeckEditorQuest.java svneol=native#text/plain src/main/java/forge/gui/deckeditor/DeckImport.java -text -src/main/java/forge/gui/deckeditor/DeckManagerOnDisk.java -text -src/main/java/forge/gui/deckeditor/DeckManagerQuest.java -text src/main/java/forge/gui/deckeditor/DraftingProcess.java svneol=native#text/plain -src/main/java/forge/gui/deckeditor/IDeckManager.java -text +src/main/java/forge/gui/deckeditor/IDeckController.java -text src/main/java/forge/gui/deckeditor/MenuBase.java -text src/main/java/forge/gui/deckeditor/MenuCommon.java svneol=native#text/plain src/main/java/forge/gui/deckeditor/MenuLimited.java -text @@ -11326,6 +11325,7 @@ src/main/java/forge/quest/SellRules.java -text src/main/java/forge/quest/data/QuestChallenge.java svneol=native#text/plain src/main/java/forge/quest/data/QuestData.java svneol=native#text/plain src/main/java/forge/quest/data/QuestDataIO.java svneol=native#text/plain +src/main/java/forge/quest/data/QuestDeckMap.java -text src/main/java/forge/quest/data/QuestDuel.java svneol=native#text/plain src/main/java/forge/quest/data/QuestEvent.java -text src/main/java/forge/quest/data/QuestEventManager.java svneol=native#text/plain diff --git a/src/main/java/forge/control/home/ControlQuest.java b/src/main/java/forge/control/home/ControlQuest.java index cf63196c3d3..93a7080320c 100644 --- a/src/main/java/forge/control/home/ControlQuest.java +++ b/src/main/java/forge/control/home/ControlQuest.java @@ -9,7 +9,6 @@ import java.io.File; import java.io.FilenameFilter; import java.util.ArrayList; import java.util.HashMap; -import java.util.List; import java.util.Map; import java.util.Set; @@ -399,21 +398,20 @@ public class ControlQuest { /** Resets decks, then retrieves and sets current deck. */ public void refreshDecks() { // Retrieve and set all decks - - List temp = new ArrayList(); - if (qData != null) { - temp.addAll(qData.getMyDecks().values()); - } - view.getLstDecks().setDecks(temp); + view.getLstDecks().setDecks(qData != null ? qData.getMyDecks() : new ArrayList() ); // Look through list for preferred deck from prefs currentDeck = null; - final String cd = qPrefs.getPreference(QPref.CURRENT_DECK); - for (Deck d : temp) { - if (d.getName().equals(cd)) { - currentDeck = d; - view.getLstDecks().setSelectedDeck(d); - break; + + if( qData != null) + { + final String cd = qPrefs.getPreference(QPref.CURRENT_DECK); + for (Deck d : qData.getMyDecks()) { + if (d.getName().equals(cd)) { + currentDeck = d; + view.getLstDecks().setSelectedDeck(d); + break; + } } } diff --git a/src/main/java/forge/deck/CustomLimited.java b/src/main/java/forge/deck/CustomLimited.java index a2b1e44f07e..03877e02657 100644 --- a/src/main/java/forge/deck/CustomLimited.java +++ b/src/main/java/forge/deck/CustomLimited.java @@ -109,21 +109,16 @@ public class CustomLimited extends DeckBase { Map data = SectionUtil.parseKvPairs(dfData, ":"); final CustomLimited cd = new CustomLimited(data.get("Name")); + cd.setIgnoreRarity("True".equalsIgnoreCase(data.get("IgnoreRarity"))); + cd.setSingleton("True".equalsIgnoreCase(data.get("Singleton"))); + for (final String dd : dfData) { final String[] v = dd.split(":", 2); final String key = v[0]; final String value = v.length > 1 ? v[1].trim() : ""; - if (key.equalsIgnoreCase("DeckFile")) { - cd.setDeckFile(value); - } - if (key.equalsIgnoreCase("IgnoreRarity")) { - cd.setIgnoreRarity(value.equals("True")); - } - if (key.equalsIgnoreCase("Singleton")) { - cd.setSingleton(value.equals("True")); - } + if (key.equalsIgnoreCase("LandSetCode")) { cd.setLandSetCode(value); } diff --git a/src/main/java/forge/gui/deckeditor/DeckManagerOnDisk.java b/src/main/java/forge/gui/deckeditor/DeckController.java similarity index 91% rename from src/main/java/forge/gui/deckeditor/DeckManagerOnDisk.java rename to src/main/java/forge/gui/deckeditor/DeckController.java index 7d13c3ac369..ed63bee8801 100644 --- a/src/main/java/forge/gui/deckeditor/DeckManagerOnDisk.java +++ b/src/main/java/forge/gui/deckeditor/DeckController.java @@ -13,7 +13,7 @@ import forge.util.IFolderMap; * TODO: Write javadoc for this type. * */ -public class DeckManagerOnDisk implements IDeckManager { +public class DeckController implements IDeckController { private T model; private boolean saved; @@ -22,7 +22,7 @@ public class DeckManagerOnDisk implements IDeckManager { private final DeckEditorBase view; private final Lambda0 newModelCreator; - public DeckManagerOnDisk(IFolderMap folder0, DeckEditorBase view0, Lambda0 newModelCreator0) + public DeckController(IFolderMap folder0, DeckEditorBase view0, Lambda0 newModelCreator0) { folder = folder0; view = view0; diff --git a/src/main/java/forge/gui/deckeditor/DeckEditorBase.java b/src/main/java/forge/gui/deckeditor/DeckEditorBase.java index a50383ec0d5..72318119f6e 100644 --- a/src/main/java/forge/gui/deckeditor/DeckEditorBase.java +++ b/src/main/java/forge/gui/deckeditor/DeckEditorBase.java @@ -93,7 +93,7 @@ public abstract class DeckEditorBase extends JF } - public abstract IDeckManager getController(); + public abstract IDeckController getController(); // THIS IS HERE FOR OVERLOADING!!!1 // or may be return abstract getFilter from derived class + this filter ... diff --git a/src/main/java/forge/gui/deckeditor/DeckEditorConstructed.java b/src/main/java/forge/gui/deckeditor/DeckEditorConstructed.java index 5558c3089e8..7a5e6778aaa 100644 --- a/src/main/java/forge/gui/deckeditor/DeckEditorConstructed.java +++ b/src/main/java/forge/gui/deckeditor/DeckEditorConstructed.java @@ -75,7 +75,7 @@ public final class DeckEditorConstructed extends DeckEditorBase controller; + private final IDeckController controller; /** * Show. * @@ -154,7 +154,7 @@ public final class DeckEditorConstructed extends DeckEditorBase newCreator = new Lambda0(){ @Override public Deck apply() { return new Deck(); } }; - controller = new DeckManagerOnDisk(AllZone.getDecks().getConstructed(), this, newCreator); + controller = new DeckController(AllZone.getDecks().getConstructed(), this, newCreator); } private void jbInit() { @@ -388,7 +388,7 @@ public final class DeckEditorConstructed extends DeckEditorBase getController() { + public IDeckController getController() { return controller; } diff --git a/src/main/java/forge/gui/deckeditor/DeckEditorLimited.java b/src/main/java/forge/gui/deckeditor/DeckEditorLimited.java index 7c3bab4573e..7b0797cc661 100644 --- a/src/main/java/forge/gui/deckeditor/DeckEditorLimited.java +++ b/src/main/java/forge/gui/deckeditor/DeckEditorLimited.java @@ -72,7 +72,7 @@ public final class DeckEditorLimited extends DeckEditorBase controller; + private final DeckController controller; /** * Show. @@ -153,7 +153,7 @@ public final class DeckEditorLimited extends DeckEditorBase newCreator = new Lambda0(){ @Override public DeckSet apply() { return new DeckSet(""); } }; - controller = new DeckManagerOnDisk(deckMap, this, newCreator); + controller = new DeckController(deckMap, this, newCreator); } private void jbInit() { @@ -379,7 +379,7 @@ public final class DeckEditorLimited extends DeckEditorBase getController() { + public IDeckController getController() { return controller; } diff --git a/src/main/java/forge/gui/deckeditor/DeckEditorQuest.java b/src/main/java/forge/gui/deckeditor/DeckEditorQuest.java index 173ac1eccc8..fcfd378a88a 100644 --- a/src/main/java/forge/gui/deckeditor/DeckEditorQuest.java +++ b/src/main/java/forge/gui/deckeditor/DeckEditorQuest.java @@ -30,6 +30,7 @@ import java.util.List; import javax.swing.JButton; import javax.swing.JCheckBox; +import net.slightlymagic.braids.util.lambda.Lambda0; import net.slightlymagic.maxmtg.Predicate; import forge.Command; import forge.Constant; @@ -73,7 +74,7 @@ public final class DeckEditorQuest extends DeckEditorBase { private FilterNameTypeSetPanel filterNameTypeSet; private final QuestData questData; - private final DeckManagerQuest controller; + private final DeckController controller ; /** * Show. @@ -185,7 +186,8 @@ public final class DeckEditorQuest extends DeckEditorBase { ErrorViewer.showError(ex); } - controller = new DeckManagerQuest(questData2, this); + Lambda0 newCreator = new Lambda0(){ @Override public Deck apply() { return new Deck(); } }; + controller = new DeckController(questData2.getMyDecks(), this, newCreator); } private void jbInit() throws Exception { @@ -350,7 +352,7 @@ public final class DeckEditorQuest extends DeckEditorBase { * @see forge.gui.deckeditor.DeckEditorBase#getController() */ @Override - public IDeckManager getController() { + public IDeckController getController() { return controller; } diff --git a/src/main/java/forge/gui/deckeditor/DeckManagerQuest.java b/src/main/java/forge/gui/deckeditor/DeckManagerQuest.java deleted file mode 100644 index cb15dc0c00e..00000000000 --- a/src/main/java/forge/gui/deckeditor/DeckManagerQuest.java +++ /dev/null @@ -1,172 +0,0 @@ -package forge.gui.deckeditor; - -import java.awt.Component; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; - -import org.apache.commons.lang3.StringUtils; - -import forge.deck.Deck; -import forge.quest.data.QuestData; - -/** - * TODO: Write javadoc for this type. - * - */ -public class DeckManagerQuest implements IDeckManager{ - - private Deck model; - private boolean saved; - private boolean modelInStore; - private final Map decks; - private final DeckEditorBase view; - - public DeckManagerQuest(QuestData questData0, DeckEditorBase view0) - { - decks = questData0.getMyDecks(); - view = view0; - } - - @Override - public Deck getModel() { return model; } - - - /* (non-Javadoc) - * @see forge.gui.deckeditor.IDeckManager#newModel() - */ - @Override - public void newModel() { - setModel(new Deck()); - } - - /** - * @param document0 the document to set - */ - public void setModel(Deck document) { - setModel( document, false ); - } - - public void setModel(Deck document, boolean isStored) { - modelInStore = isStored; - this.model = document; - view.updateView(); - saved = true; // unless set to false in notify - } - - /* (non-Javadoc) - * @see forge.gui.deckeditor.IDeckManager#getModel() - */ - - /* (non-Javadoc) - * @see forge.gui.deckeditor.IDeckManager#notifyModelChanged() - */ - @Override - public void notifyModelChanged() { - saved = false; - // view.setTitle() - } - - /* (non-Javadoc) - * @see forge.gui.deckeditor.IDeckManager#getOwnerWindow() - */ - @Override - public Component getOwnerWindow() { - return view; - } - - /* (non-Javadoc) - * @see forge.gui.deckeditor.IDeckManager#getView() - */ - @Override - public DeckEditorBase getView() { - return view; - } - - /* (non-Javadoc) - * @see forge.gui.deckeditor.IDeckManager#getSavedNames() - */ - @Override - public List getSavedNames() { - return new ArrayList(decks.keySet()); - } - - /* (non-Javadoc) - * @see forge.gui.deckeditor.IDeckManager#load(java.lang.String) - */ - @Override - public void load(String name) { - Deck deck = decks.get(name); - if ( null != deck ) - setModel(deck, true); - } - - /* (non-Javadoc) - * @see forge.gui.deckeditor.IDeckManager#save() - */ - @Override - public void save() { - decks.put(model.getName(), model); - // save to disk is done from outside - } - - /* (non-Javadoc) - * @see forge.gui.deckeditor.IDeckManager#isSaved() - */ - @Override - public boolean isSaved() { - return saved; - } - - /* (non-Javadoc) - * @see forge.gui.deckeditor.IDeckManager#delete() - */ - @Override - public void delete() { - if ( StringUtils.isNotBlank(model.getName())) { - decks.remove(model.getName()); - } - modelInStore = false; - newModel(); - } - - /* (non-Javadoc) - * @see forge.gui.deckeditor.IDeckManager#isGoodName(java.lang.String) - */ - @Override - public boolean isGoodName(String deckName) { - return false; - } - - /* (non-Javadoc) - * @see forge.gui.deckeditor.IDeckManager#importDeck(java.lang.Object) - */ - @Override - public void importDeck(Deck newDeck) { - - } - - /* (non-Javadoc) - * @see forge.gui.deckeditor.IDeckManager#isModelInStore() - */ - @Override - public boolean isModelInStore() { - return modelInStore; - } - - /* (non-Javadoc) - * @see forge.gui.deckeditor.IDeckManager#saveAs(java.lang.String) - */ - @Override - public void saveAs(String name0) { - } - - /* (non-Javadoc) - * @see forge.gui.deckeditor.IDeckManager#fileExists(java.lang.String) - */ - @Override - public boolean fileExists(String deckName) { - return false; - } - -} diff --git a/src/main/java/forge/gui/deckeditor/DraftingProcess.java b/src/main/java/forge/gui/deckeditor/DraftingProcess.java index b714bac02d7..57f7b8c306f 100644 --- a/src/main/java/forge/gui/deckeditor/DraftingProcess.java +++ b/src/main/java/forge/gui/deckeditor/DraftingProcess.java @@ -355,7 +355,7 @@ public class DraftingProcess extends DeckEditorBase { * @see forge.gui.deckeditor.DeckEditorBase#getController() */ @Override - public IDeckManager getController() { + public IDeckController getController() { return null; } diff --git a/src/main/java/forge/gui/deckeditor/IDeckManager.java b/src/main/java/forge/gui/deckeditor/IDeckController.java similarity index 94% rename from src/main/java/forge/gui/deckeditor/IDeckManager.java rename to src/main/java/forge/gui/deckeditor/IDeckController.java index 71b4561825c..f313d6578b4 100644 --- a/src/main/java/forge/gui/deckeditor/IDeckManager.java +++ b/src/main/java/forge/gui/deckeditor/IDeckController.java @@ -7,7 +7,7 @@ import java.util.List; * TODO: Write javadoc for this type. * */ -public interface IDeckManager { +public interface IDeckController { void newModel(); void setModel(T model); diff --git a/src/main/java/forge/gui/deckeditor/MenuBase.java b/src/main/java/forge/gui/deckeditor/MenuBase.java index 35f39a4e124..da1fc6bf4f1 100644 --- a/src/main/java/forge/gui/deckeditor/MenuBase.java +++ b/src/main/java/forge/gui/deckeditor/MenuBase.java @@ -46,7 +46,7 @@ public class MenuBase extends JMenuBar { private static final long serialVersionUID = -4037993759604768755L; private final Command exitCommand; - private final IDeckManager controller; + private final IDeckController controller; /** * @@ -59,14 +59,14 @@ public class MenuBase extends JMenuBar { * @param exit * a Command */ - public MenuBase(final IDeckManager ctrl, final Command exit) { + public MenuBase(final IDeckController ctrl, final Command exit) { this.controller = ctrl; this.exitCommand = exit; this.setupMenu(); } - protected final IDeckManager getController() { + protected final IDeckController getController() { return controller; } diff --git a/src/main/java/forge/gui/deckeditor/MenuCommon.java b/src/main/java/forge/gui/deckeditor/MenuCommon.java index 2d92e6a59fa..864fd67c4d3 100644 --- a/src/main/java/forge/gui/deckeditor/MenuCommon.java +++ b/src/main/java/forge/gui/deckeditor/MenuCommon.java @@ -59,7 +59,7 @@ public final class MenuCommon extends MenuBase { * @param exit * a Command */ - public MenuCommon(final IDeckManager ctrl, final Command exit) { + public MenuCommon(final IDeckController ctrl, final Command exit) { super(ctrl, exit); // this is added just to make save() and saveAs() work ok diff --git a/src/main/java/forge/gui/deckeditor/MenuLimited.java b/src/main/java/forge/gui/deckeditor/MenuLimited.java index 9d72fd54e9e..c4665a572b9 100644 --- a/src/main/java/forge/gui/deckeditor/MenuLimited.java +++ b/src/main/java/forge/gui/deckeditor/MenuLimited.java @@ -44,7 +44,7 @@ public final class MenuLimited extends MenuBase { * @param exit * a Command */ - public MenuLimited(final IDeckManager ctrl, final Command exit) { + public MenuLimited(final IDeckController ctrl, final Command exit) { super( ctrl, exit ); } diff --git a/src/main/java/forge/gui/deckeditor/MenuQuest.java b/src/main/java/forge/gui/deckeditor/MenuQuest.java index bc8a82a155c..bfe04da6199 100644 --- a/src/main/java/forge/gui/deckeditor/MenuQuest.java +++ b/src/main/java/forge/gui/deckeditor/MenuQuest.java @@ -66,7 +66,7 @@ public class MenuQuest extends MenuBase { * @param exit * a {@link forge.Command} object. */ - public MenuQuest(final IDeckManager d, final Command exit) { + public MenuQuest(final IDeckController d, final Command exit) { super(d, exit); diff --git a/src/main/java/forge/gui/deckeditor/QuestCardShop.java b/src/main/java/forge/gui/deckeditor/QuestCardShop.java index a347904b23d..d111611cc04 100644 --- a/src/main/java/forge/gui/deckeditor/QuestCardShop.java +++ b/src/main/java/forge/gui/deckeditor/QuestCardShop.java @@ -144,7 +144,7 @@ public final class QuestCardShop extends DeckEditorBase { // fills number of decks using each card private Map countDecksForEachCard() { final Map result = new HashMap(); - for (final Deck deck : this.questData.getMyDecks().values()) { + for (final Deck deck : this.questData.getMyDecks()) { for (final Entry e : deck.getMain()) { final CardPrinted card = e.getKey(); final Integer amount = result.get(card); @@ -420,7 +420,7 @@ public final class QuestCardShop extends DeckEditorBase { * @see forge.gui.deckeditor.DeckEditorBase#getController() */ @Override - public IDeckManager getController() { + public IDeckController getController() { return null; } diff --git a/src/main/java/forge/quest/data/QuestData.java b/src/main/java/forge/quest/data/QuestData.java index 6bc9640ef17..b7eee11bac5 100644 --- a/src/main/java/forge/quest/data/QuestData.java +++ b/src/main/java/forge/quest/data/QuestData.java @@ -26,7 +26,6 @@ import net.slightlymagic.maxmtg.Predicate; import forge.SetUtils; import forge.Singletons; import forge.deck.Deck; -import forge.error.ErrorViewer; import forge.item.CardPrinted; import forge.item.InventoryItem; import forge.item.ItemPool; @@ -36,6 +35,7 @@ import forge.properties.NewConstants; import forge.quest.data.QuestPreferences.QPref; import forge.quest.data.item.QuestInventory; import forge.quest.data.pet.QuestPetManager; +import forge.util.IFolderMap; import forge.util.MyRandom; //when you create QuestDataOld and AFTER you copy the AI decks over @@ -115,7 +115,9 @@ public final class QuestData { // Decks collected by player /** The my decks. */ - private final Map myDecks = new HashMap(); + private final HashMap myDecks = new HashMap(); + + private transient IFolderMap decks; // Cards associated with quest /** The card pool. */ @@ -204,6 +206,7 @@ public final class QuestData { private void initTransients() { // These are helper classes that hold no data. + this.decks = new QuestDeckMap(myDecks); this.myCards = new QuestUtilCards(this); // to avoid NPE some pools will be created here if they are null @@ -549,41 +552,6 @@ public final class QuestData { // decks management - /** @return List */ - public List getDecks() { - return new ArrayList(this.getMyDecks().values()); - } - - /** - * Removes the deck. - * - * @param deckName - * the deck name - */ - public void removeDeck(final String deckName) { - this.getMyDecks().remove(deckName); - } - - /** - *

- * getDeck. - *

- * - * @param deckName - * a {@link java.lang.String} object. - * @return a {@link forge.deck.Deck} object. - */ - public Deck getDeck(final String deckName) { - if (!this.getMyDecks().containsKey(deckName)) { - ErrorViewer.showError(new Exception(), - "QuestData : getDeckFromMap(String deckName) error, deck name not found - %s", deckName); - return null; - } - final Deck d = this.getMyDecks().get(deckName); - d.getSideboard().clear(); - return d; - } - // randomizer - related /** * Gets the random seed. @@ -674,8 +642,8 @@ public final class QuestData { * * @return the myDecks */ - public Map getMyDecks() { - return this.myDecks; + public IFolderMap getMyDecks() { + return this.decks; } diff --git a/src/main/java/forge/quest/data/QuestDeckMap.java b/src/main/java/forge/quest/data/QuestDeckMap.java new file mode 100644 index 00000000000..c40c5807197 --- /dev/null +++ b/src/main/java/forge/quest/data/QuestDeckMap.java @@ -0,0 +1,75 @@ +package forge.quest.data; + +import java.util.Collection; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; + +import forge.deck.Deck; +import forge.util.IFolderMap; + +/** + * TODO: Write javadoc for this type. + * + */ +public class QuestDeckMap implements IFolderMap { + + + public QuestDeckMap() { + map = new HashMap(); + } + + public QuestDeckMap(Map inMap) { + map = inMap; + } + + private final Map map; + /* (non-Javadoc) + * @see forge.util.IFolderMapView#get(java.lang.String) + */ + @Override + public Deck get(String name) { + return map.get(name); + } + + /* (non-Javadoc) + * @see forge.util.IFolderMapView#getNames() + */ + @Override + public Collection getNames() { + return map.keySet(); + } + + /* (non-Javadoc) + * @see java.lang.Iterable#iterator() + */ + @Override + public Iterator iterator() { + return map.values().iterator(); + } + + /* (non-Javadoc) + * @see forge.util.IFolderMap#add(forge.util.IHasName) + */ + @Override + public void add(Deck deck) { + map.put(deck.getName(), deck); + } + + /* (non-Javadoc) + * @see forge.util.IFolderMap#delete(java.lang.String) + */ + @Override + public void delete(String deckName) { + map.remove(deckName); + } + + /* (non-Javadoc) + * @see forge.util.IFolderMap#isUnique(java.lang.String) + */ + @Override + public boolean isUnique(String name) { + return !map.containsKey(name); + } + +} diff --git a/src/main/java/forge/quest/data/QuestUtilCards.java b/src/main/java/forge/quest/data/QuestUtilCards.java index 4321c787b1b..b2f0ff1e09b 100644 --- a/src/main/java/forge/quest/data/QuestUtilCards.java +++ b/src/main/java/forge/quest/data/QuestUtilCards.java @@ -223,7 +223,7 @@ public final class QuestUtilCards { if (this.q.getCredits() >= value) { this.q.setCredits(this.q.getCredits() - value); this.q.getShopList().remove(precon); - this.q.getMyDecks().put(precon.getDeck().getName(), precon.getDeck()); + this.q.getMyDecks().add(precon.getDeck()); this.addAllCards(precon.getDeck().getMain().toFlatList()); } } @@ -262,7 +262,7 @@ public final class QuestUtilCards { // remove card being sold from all decks final int leftInPool = this.q.getCardPool().count(card); // remove sold cards from all decks: - for (final Deck deck : this.q.getMyDecks().values()) { + for (final Deck deck : this.q.getMyDecks()) { deck.getMain().remove(card, deck.getMain().count(card) - leftInPool); } } diff --git a/src/main/java/forge/view/toolbox/DeckLister.java b/src/main/java/forge/view/toolbox/DeckLister.java index c7a1aa34df9..09e0cb6f3ff 100644 --- a/src/main/java/forge/view/toolbox/DeckLister.java +++ b/src/main/java/forge/view/toolbox/DeckLister.java @@ -399,7 +399,7 @@ public class DeckLister extends JPanel { AllZone.getDecks().getSealed().delete(d0.getName()); } else if (gametype.equals(GameType.Quest)) { - AllZone.getQuestData().removeDeck(d0.getName()); + AllZone.getQuestData().getMyDecks().delete(d0.getName()); AllZone.getQuestData().saveData(); Singletons.getView().getViewHome().getBtnQuest().grabFocus(); }