From d2a9249da0092845b904ae4bc6134158b6cb9548 Mon Sep 17 00:00:00 2001 From: "marcins78@gmail.com" Date: Thu, 19 Jan 2012 11:24:55 +0000 Subject: [PATCH] Adding some features to card filtering. --- .../com/gempukku/lotro/game/DefaultCardCollection.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/DefaultCardCollection.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/DefaultCardCollection.java index aef182463..1ee7fdcf9 100644 --- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/DefaultCardCollection.java +++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/game/DefaultCardCollection.java @@ -20,9 +20,11 @@ public class DefaultCardCollection implements MutableCardCollection { private static class NameComparator implements Comparator { private LotroCardBlueprintLibrary _library; + private CardBlueprintIdComparator _cardBlueprintIdComparator; private NameComparator(LotroCardBlueprintLibrary library) { _library = library; + _cardBlueprintIdComparator = new CardBlueprintIdComparator(); } @Override @@ -30,8 +32,12 @@ public class DefaultCardCollection implements MutableCardCollection { if (o1.getType() == o2.getType()) { if (o1.getType() == Item.Type.PACK) return o1.getBlueprintId().compareTo(o2.getBlueprintId()); - else - return _library.getLotroCardBlueprint(o1.getBlueprintId()).getName().compareTo(_library.getLotroCardBlueprint(o2.getBlueprintId()).getName()); + else { + final int nameCompareResult = _library.getLotroCardBlueprint(o1.getBlueprintId()).getName().compareTo(_library.getLotroCardBlueprint(o2.getBlueprintId()).getName()); + if (nameCompareResult == 0) + return _cardBlueprintIdComparator.compare(o1.getBlueprintId(), o2.getBlueprintId()); + return nameCompareResult; + } } else { if (o1.getType() == Item.Type.PACK) return -1;