From 1101e305418f6d797155da54f372008d2c11cfb4 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Thu, 26 Mar 2020 13:17:09 -0500 Subject: [PATCH] Add language asset purpur.lang --- .../net/minecraft/server/ChatMessage.java | 3 ++- .../net/minecraft/server/LocaleLanguage.java | 24 ++++++++++++++++++- src/main/resources/purpur.lang | 1 + 3 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 src/main/resources/purpur.lang diff --git a/src/main/java/net/minecraft/server/ChatMessage.java b/src/main/java/net/minecraft/server/ChatMessage.java index 937361fc2b..37ec73a8cb 100644 --- a/src/main/java/net/minecraft/server/ChatMessage.java +++ b/src/main/java/net/minecraft/server/ChatMessage.java @@ -17,7 +17,7 @@ public class ChatMessage extends ChatBaseComponent implements ChatComponentConte private static final LocaleLanguage d = new LocaleLanguage(); private static final LocaleLanguage e = LocaleLanguage.a(); - private final String key; + private String key; // Purpur - remove final private final Object[] args; private final Object h = new Object(); private long i = -1L; @@ -41,6 +41,7 @@ public class ChatMessage extends ChatBaseComponent implements ChatComponentConte } } + if (key != null && key.contains(".purpur.")) key = getText(); // Purpur } @VisibleForTesting diff --git a/src/main/java/net/minecraft/server/LocaleLanguage.java b/src/main/java/net/minecraft/server/LocaleLanguage.java index 6012739331..9cafd1a9cd 100644 --- a/src/main/java/net/minecraft/server/LocaleLanguage.java +++ b/src/main/java/net/minecraft/server/LocaleLanguage.java @@ -25,8 +25,30 @@ public class LocaleLanguage { private long e; public LocaleLanguage() { + // Purpur start + loadFromJar(); + loadFromFile(); + } + + private void loadFromFile() { + try { + java.io.File file = new java.io.File("purpur.lang"); + if (!file.exists()) { + java.nio.file.Files.copy(getClass().getResourceAsStream("/purpur.lang"), file.toPath(), java.nio.file.StandardCopyOption.REPLACE_EXISTING); + } + loadFromStream(new java.io.FileInputStream(file)); + } catch (IOException e) { + LOGGER.error("Couldn't read string from purpur.lang!", e); + } + } + + private void loadFromJar() { + loadFromStream(getClass().getResourceAsStream("/assets/minecraft/lang/en_us.json")); + } + + private void loadFromStream(InputStream inputstream) { + // Purpur end try { - InputStream inputstream = LocaleLanguage.class.getResourceAsStream("/assets/minecraft/lang/en_us.json"); Throwable throwable = null; try { diff --git a/src/main/resources/purpur.lang b/src/main/resources/purpur.lang new file mode 100644 index 0000000000..0967ef424b --- /dev/null +++ b/src/main/resources/purpur.lang @@ -0,0 +1 @@ +{} -- 2.24.0