diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/loottracker/LootTrackerPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/loottracker/LootTrackerPlugin.java index 20ce89f8f5..8acb76bf35 100644 --- a/runelite-client/src/main/java/net/runelite/client/plugins/loottracker/LootTrackerPlugin.java +++ b/runelite-client/src/main/java/net/runelite/client/plugins/loottracker/LootTrackerPlugin.java @@ -37,6 +37,7 @@ import java.time.Instant; import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; +import java.util.Comparator; import java.util.HashSet; import java.util.List; import java.util.Map; @@ -607,17 +608,17 @@ public class LootTrackerPlugin extends Plugin private Collection convertToLootTrackerRecord(final Collection records) { - Collection trackerRecords = new ArrayList<>(); - for (LootRecord record : records) - { - LootTrackerItem[] drops = record.getDrops().stream().map(itemStack -> - buildLootTrackerItem(itemStack.getId(), itemStack.getQty()) - ).toArray(LootTrackerItem[]::new); + return records.stream() + .sorted(Comparator.comparing(LootRecord::getTime)) + .map(record -> + { + LootTrackerItem[] drops = record.getDrops().stream().map(itemStack -> + buildLootTrackerItem(itemStack.getId(), itemStack.getQty()) + ).toArray(LootTrackerItem[]::new); - trackerRecords.add(new LootTrackerRecord(record.getEventId(), "", drops)); - } - - return trackerRecords; + return new LootTrackerRecord(record.getEventId(), "", drops); + }) + .collect(Collectors.toCollection(ArrayList::new)); } /**