From 776467fe60c1f2acebcfebcf89421094c88d844c Mon Sep 17 00:00:00 2001 From: myk Date: Mon, 4 Mar 2013 10:17:40 +0000 Subject: [PATCH] don't inflate 'decks that contain this card' count when the card appears in both the main deck and the sideboard --- .../deckeditor/controllers/CEditorQuestCardShop.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/main/java/forge/gui/deckeditor/controllers/CEditorQuestCardShop.java b/src/main/java/forge/gui/deckeditor/controllers/CEditorQuestCardShop.java index eaf6361342f..1f28ba0835d 100644 --- a/src/main/java/forge/gui/deckeditor/controllers/CEditorQuestCardShop.java +++ b/src/main/java/forge/gui/deckeditor/controllers/CEditorQuestCardShop.java @@ -33,6 +33,7 @@ import com.google.common.base.Function; import forge.Command; import forge.Singletons; +import forge.deck.CardPool; import forge.deck.Deck; import forge.deck.DeckBase; import forge.deck.DeckSection; @@ -214,13 +215,18 @@ public final class CEditorQuestCardShop extends ACEditorBase countDecksForEachCard() { final ItemPool result = new ItemPool(InventoryItem.class); for (final Deck deck : this.questData.getMyDecks()) { - for (final Entry e : deck.getMain()) { + CardPool main = deck.getMain(); + for (final Entry e : main) { result.add(e.getKey()); } - if ( deck.has(DeckSection.Sideboard)) + if (deck.has(DeckSection.Sideboard)) { for (final Entry e : deck.get(DeckSection.Sideboard)) { - result.add(e.getKey()); + // only add card if we haven't already encountered it in main + if (!main.contains(e.getKey())) { + result.add(e.getKey()); + } } + } } return result; }