From b7c3c53dc903dd565d90ad937535f9e8a4aa66ad Mon Sep 17 00:00:00 2001 From: bigguy345 Date: Fri, 13 Mar 2026 03:03:39 +0200 Subject: [PATCH] Fixed ScriptColorScheme not respecting resourcepack priority --- .../npcs/client/CustomNpcResourceListener.java | 2 +- .../interpreter/token/ScriptColorScheme.java | 16 +++------------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/src/main/java/noppes/npcs/client/CustomNpcResourceListener.java b/src/main/java/noppes/npcs/client/CustomNpcResourceListener.java index cb39c40c2..ed186d9cd 100644 --- a/src/main/java/noppes/npcs/client/CustomNpcResourceListener.java +++ b/src/main/java/noppes/npcs/client/CustomNpcResourceListener.java @@ -30,7 +30,7 @@ public class CustomNpcResourceListener implements SimpleReloadableResourceManager simplemanager = (SimpleReloadableResourceManager) var1; FolderResourcePack pack = new FolderResourcePack(CustomNpcs.Dir); - LogWriter.info("[ResourceListener] Adding FolderResourcePack: " + CustomNpcs.Dir.getAbsolutePath()); + LogWriter.info("[ResourceListener] Adding FolderResourcePack (as fallback): " + CustomNpcs.Dir.getAbsolutePath()); simplemanager.reloadResourcePack(pack); ScriptColorScheme.reloadColorScheme(var1); diff --git a/src/main/java/noppes/npcs/client/gui/util/script/interpreter/token/ScriptColorScheme.java b/src/main/java/noppes/npcs/client/gui/util/script/interpreter/token/ScriptColorScheme.java index e38aae462..d0b6df162 100644 --- a/src/main/java/noppes/npcs/client/gui/util/script/interpreter/token/ScriptColorScheme.java +++ b/src/main/java/noppes/npcs/client/gui/util/script/interpreter/token/ScriptColorScheme.java @@ -43,9 +43,10 @@ public final class ScriptColorScheme { public static void reloadColorScheme(IResourceManager resourceManager) { ResourceLocation loc = new ResourceLocation("customnpcs", "colorscheme/script_editor_scheme.json"); try { - IResource resource = resourceManager.getResource(loc); + List resources = resourceManager.getAllResources(loc); + IResource top = resources.get(resources.size() - 1); - try (InputStream is = resource.getInputStream(); + try (InputStream is = top.getInputStream(); InputStreamReader reader = new InputStreamReader(is, StandardCharsets.UTF_8)) { loadFromJson(reader); LogWriter.info("[ColorScheme] Loaded script_editor_scheme.json successfully"); @@ -60,17 +61,6 @@ public final class ScriptColorScheme { } } - private static String peekResourceContent(IResource res) { - try (InputStream peekIs = res.getInputStream()) { - byte[] buf = new byte[120]; - int read = peekIs.read(buf); - if (read > 0) { - return new String(buf, 0, read, "UTF-8").replaceAll("\\s+", " ").trim(); - } - } catch (Exception ignored) {} - return ""; - } - private static void logLoadedSample() { StyleEntry[] current = styles; TokenType[] samples = { TokenType.COMMENT, TokenType.KEYWORD, TokenType.STRING, TokenType.METHOD_CALL, TokenType.DEFAULT };