diff --git a/src/main/java/com/alttd/config/Config.java b/src/main/java/com/alttd/config/Config.java index 879f054..531c624 100644 --- a/src/main/java/com/alttd/config/Config.java +++ b/src/main/java/com/alttd/config/Config.java @@ -1,5 +1,6 @@ package com.alttd.config; +import com.alttd.objects.ItemStackComparator; import com.alttd.objects.VillagerType; import com.alttd.util.Logger; import org.bukkit.Material; @@ -7,9 +8,7 @@ import org.bukkit.configuration.ConfigurationSection; import org.bukkit.inventory.ItemStack; import java.io.File; -import java.util.HashSet; -import java.util.List; -import java.util.Set; +import java.util.*; public final class Config extends AbstractConfig { @@ -166,8 +165,8 @@ public final class Config extends AbstractConfig { }); } - private static HashSet loadProducts(ConfigurationSection productsSection) { - HashSet products = new HashSet<>(); + private static TreeSet loadProducts(ConfigurationSection productsSection) { + TreeSet products = new TreeSet<>(new ItemStackComparator()); if (productsSection == null) return products; diff --git a/src/main/java/com/alttd/objects/ItemStackComparator.java b/src/main/java/com/alttd/objects/ItemStackComparator.java new file mode 100644 index 0000000..f92078a --- /dev/null +++ b/src/main/java/com/alttd/objects/ItemStackComparator.java @@ -0,0 +1,12 @@ +package com.alttd.objects; + +import org.bukkit.inventory.ItemStack; + +import java.util.Comparator; + +public class ItemStackComparator implements Comparator { + @Override + public int compare(ItemStack o1, ItemStack o2) { + return o1.getType().name().compareTo(o2.getType().name()); + } +} diff --git a/src/main/java/com/alttd/objects/VillagerType.java b/src/main/java/com/alttd/objects/VillagerType.java index 69923cb..ce6911b 100644 --- a/src/main/java/com/alttd/objects/VillagerType.java +++ b/src/main/java/com/alttd/objects/VillagerType.java @@ -5,6 +5,7 @@ import org.bukkit.inventory.ItemStack; import java.util.HashSet; import java.util.Set; +import java.util.TreeSet; public class VillagerType { private static final Set villagerTypes = new HashSet<>(); @@ -30,7 +31,7 @@ public class VillagerType { private final Set selling; private final Villager.Profession profession; - public VillagerType(String name, String displayName, Set buying, Set selling, String profession) { + public VillagerType(String name, String displayName, TreeSet buying, TreeSet selling, String profession) { this.name = name; this.displayName = displayName; this.buying = buying;