diff --git a/forge-core/src/main/java/forge/card/CardDb.java b/forge-core/src/main/java/forge/card/CardDb.java index f672c12e09a..6703f58075b 100644 --- a/forge-core/src/main/java/forge/card/CardDb.java +++ b/forge-core/src/main/java/forge/card/CardDb.java @@ -50,8 +50,7 @@ public final class CardDb implements ICardDatabase, IDeckGenPool { private final Map alternateName = Maps.newTreeMap(String.CASE_INSENSITIVE_ORDER); private final Map artIds = new HashMap<>(); - private final List allCards = new ArrayList<>(); - private final List roAllCards = Collections.unmodifiableList(allCards); + private final Collection roAllCards = Collections.unmodifiableCollection(allCardsByName.values()); private final CardEdition.Collection editions; public enum SetPreference { @@ -247,10 +246,8 @@ public final class CardDb implements ICardDatabase, IDeckGenPool { private void reIndex() { uniqueCardsByName.clear(); - allCards.clear(); for (Entry> kv : allCardsByName.asMap().entrySet()) { uniqueCardsByName.put(kv.getKey(), getFirstWithImage(kv.getValue())); - allCards.addAll(kv.getValue()); } } @@ -537,7 +534,7 @@ public final class CardDb implements ICardDatabase, IDeckGenPool { } @Override - public List getAllCards() { + public Collection getAllCards() { return roAllCards; } diff --git a/forge-core/src/main/java/forge/card/ICardDatabase.java b/forge-core/src/main/java/forge/card/ICardDatabase.java index a6256207fc7..a83faea5b4d 100644 --- a/forge-core/src/main/java/forge/card/ICardDatabase.java +++ b/forge-core/src/main/java/forge/card/ICardDatabase.java @@ -24,9 +24,9 @@ public interface ICardDatabase extends Iterable { int getArtCount(String cardName, String edition); Collection getUniqueCards(); - List getAllCards(); - List getAllCards(String cardName); - List getAllCards(Predicate predicate); + Collection getAllCards(); + Collection getAllCards(String cardName); + Collection getAllCards(Predicate predicate); List getAllCardsFromEdition(CardEdition edition); diff --git a/forge-gui/src/main/java/forge/quest/QuestWorld.java b/forge-gui/src/main/java/forge/quest/QuestWorld.java index 651e285624f..f69cbe5d7df 100644 --- a/forge-gui/src/main/java/forge/quest/QuestWorld.java +++ b/forge-gui/src/main/java/forge/quest/QuestWorld.java @@ -27,6 +27,7 @@ import forge.util.storage.StorageReaderFile; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collection; import java.util.HashSet; import java.util.List; import java.util.Set; @@ -102,7 +103,7 @@ public class QuestWorld implements Comparable{ return format; } - public List getAllCards() { + public Collection getAllCards() { GameFormat format0 = format; if (format0 == null) { format0 = FModel.getQuest().getMainFormat();