From d5416f1442dc80c816ab8d76c8cceaf391d0f481 Mon Sep 17 00:00:00 2001 From: DeDiamondPro <67508414+DeDiamondPro@users.noreply.github.com> Date: Tue, 14 Jun 2022 20:21:25 +0200 Subject: new sorting behavior --- .../oneconfig/internal/config/OneConfigConfig.java | 1 - .../oneconfig/internal/config/core/ConfigCore.java | 16 +++++++++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) (limited to 'src/main/java/cc/polyfrost/oneconfig/internal/config') diff --git a/src/main/java/cc/polyfrost/oneconfig/internal/config/OneConfigConfig.java b/src/main/java/cc/polyfrost/oneconfig/internal/config/OneConfigConfig.java index 1986e9e..96fde65 100644 --- a/src/main/java/cc/polyfrost/oneconfig/internal/config/OneConfigConfig.java +++ b/src/main/java/cc/polyfrost/oneconfig/internal/config/OneConfigConfig.java @@ -22,7 +22,6 @@ public class OneConfigConfig extends InternalConfig { public static ArrayList favoriteMods = new ArrayList<>(); public static ArrayList favoriteColors = new ArrayList<>(); public static ArrayList recentColors = new ArrayList<>(); - public static boolean allShowShortCut = false; public static boolean australia = false; public OneConfigConfig() { diff --git a/src/main/java/cc/polyfrost/oneconfig/internal/config/core/ConfigCore.java b/src/main/java/cc/polyfrost/oneconfig/internal/config/core/ConfigCore.java index a1084a1..6b88afa 100644 --- a/src/main/java/cc/polyfrost/oneconfig/internal/config/core/ConfigCore.java +++ b/src/main/java/cc/polyfrost/oneconfig/internal/config/core/ConfigCore.java @@ -1,12 +1,16 @@ package cc.polyfrost.oneconfig.internal.config.core; import cc.polyfrost.oneconfig.config.data.Mod; +import cc.polyfrost.oneconfig.config.data.ModType; +import cc.polyfrost.oneconfig.internal.config.OneConfigConfig; import cc.polyfrost.oneconfig.internal.hud.HudCore; import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; public class ConfigCore { - public static ArrayList oneConfigMods = new ArrayList<>(); + public static List oneConfigMods = new ArrayList<>(); public static void saveAll() { for (Mod modData : oneConfigMods) { @@ -22,5 +26,15 @@ public class ConfigCore { for (Mod modData : data) { modData.config.init(modData); } + sortMods(); + } + + public static void sortMods() { + ArrayList mods = new ArrayList<>(oneConfigMods); + oneConfigMods = mods.stream().filter((mod -> OneConfigConfig.favoriteMods.contains(mod.name))).sorted().collect(Collectors.toList()); + mods.removeAll(oneConfigMods); + oneConfigMods.addAll(mods.stream().filter(mod -> mod.modType != ModType.THIRD_PARTY).sorted().collect(Collectors.toList())); + mods.removeAll(oneConfigMods); + oneConfigMods.addAll(mods.stream().sorted().collect(Collectors.toList())); } } -- cgit