From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Helvetica Volubi Date: Thu, 12 Jun 2025 04:44:24 +0800 Subject: [PATCH] Server I18n diff --git a/net/minecraft/locale/Language.java b/net/minecraft/locale/Language.java index 47cd33bce908744e64356b585853d6a8ecf82443..bb4011d3c6a1d2a5aa66e68fe719cd5eea2c0dd2 100644 --- a/net/minecraft/locale/Language.java +++ b/net/minecraft/locale/Language.java @@ -37,6 +37,7 @@ public abstract class Language { Map loadedData = new HashMap<>(); BiConsumer output = loadedData::put; parseTranslations(output, "/assets/minecraft/lang/en_us.json"); + fun.bm.lophine.utils.ServerI18nUtil.loadLophineI18nDefault(output); // Lophine - Server I18n deprecatedInfo.applyToMap(loadedData); final Map storage = Map.copyOf(loadedData); return new Language() { @@ -66,7 +67,7 @@ public abstract class Language { }; } - private static void parseTranslations(final BiConsumer output, final String path) { + public static void parseTranslations(final BiConsumer output, final String path) { // Lophine - private -> public try (InputStream stream = Language.class.getResourceAsStream(path)) { loadFromJson(stream, output); } catch (IOException | JsonParseException e) { diff --git a/net/minecraft/server/Main.java b/net/minecraft/server/Main.java index 4385488983a7544eb6d9193d913dc55294f4620d..9269f9918c4f1eda8ae9cc487da2826ca09a10fb 100644 --- a/net/minecraft/server/Main.java +++ b/net/minecraft/server/Main.java @@ -167,6 +167,8 @@ public class Main { return; } + fun.bm.lophine.utils.ServerI18nUtil.preInit(); // Lophine - I18n support + // Paper start - Detect headless JRE String awtException = io.papermc.paper.util.ServerEnvironment.awtDependencyCheck(); if (awtException != null) { diff --git a/net/minecraft/server/dedicated/DedicatedServer.java b/net/minecraft/server/dedicated/DedicatedServer.java index 81934fb56744dbbb3fdd100e8ec83cb634034d04..2dae0f4249eade60ac55c9fa289dd146dc3675e1 100644 --- a/net/minecraft/server/dedicated/DedicatedServer.java +++ b/net/minecraft/server/dedicated/DedicatedServer.java @@ -239,6 +239,7 @@ public class DedicatedServer extends MinecraftServer implements ServerInterface this.paperConfigurations.initializeWorldDefaultsConfiguration(this.registryAccess()); // Paper end - initialize global and world-defaults configuration me.earthme.luminol.config.ConfigManager.loadConfigFiles(); // Luminol - load config file + fun.bm.lophine.utils.ServerI18nUtil.init(); // Lophine - I18n support if (false) this.server.spark.enableEarlyIfRequested(); // Paper - spark // Luminol - Force disable builtin spark // Paper start - fix converting txt to json file; convert old users earlier after PlayerList creation but before file load/save if (this.convertOldUsers()) {