mirror of
https://github.com/YatopiaMC/Yatopia.git
synced 2024-11-29 06:05:14 +01:00
45 lines
2.4 KiB
Diff
45 lines
2.4 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Zoe <duplexsys@protonmail.com>
|
|
Date: Sun, 25 Oct 2020 11:45:38 -0500
|
|
Subject: [PATCH] Custom Locale Support
|
|
|
|
All Server Jars Come with a pre-baked, usually English, locale file. This patch allows you to change the locale file by creating a locale.json file in the root directory of your server. Note that while custom locale files are supported by the server no support will be given for non-official Mojang locale files.
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/LocaleLanguage.java b/src/main/java/net/minecraft/server/LocaleLanguage.java
|
|
index 29d55483510d3644a1edd3a01d7314232c358ac6..9909dd07d47ec86b71b74f66ab0e252de3441e23 100644
|
|
--- a/src/main/java/net/minecraft/server/LocaleLanguage.java
|
|
+++ b/src/main/java/net/minecraft/server/LocaleLanguage.java
|
|
@@ -30,9 +30,19 @@ public abstract class LocaleLanguage {
|
|
private static LocaleLanguage c() {
|
|
Builder<String, String> builder = ImmutableMap.builder();
|
|
BiConsumer<String, String> biconsumer = builder::put; // Paper - decompile fix
|
|
+ boolean usingCustomLocale = false; // Yatopia
|
|
|
|
try {
|
|
- InputStream inputstream = LocaleLanguage.class.getResourceAsStream("/assets/minecraft/lang/en_us.json");
|
|
+ // Yatopia Start - Custom Locale
|
|
+ InputStream inputstream;
|
|
+ java.io.File file = new java.io.File("./locale.json");
|
|
+ if (file.isFile() && file.canRead()) {
|
|
+ usingCustomLocale = true;
|
|
+ inputstream = new java.io.FileInputStream(file);
|
|
+ } else {
|
|
+ inputstream = LocaleLanguage.class.getResourceAsStream("/assets/minecraft/lang/en_us.json");
|
|
+ }
|
|
+ // Yatopia End
|
|
Throwable throwable = null;
|
|
|
|
try {
|
|
@@ -55,7 +65,11 @@ public abstract class LocaleLanguage {
|
|
|
|
}
|
|
} catch (JsonParseException | IOException ioexception) {
|
|
+ if (!usingCustomLocale) { // Yatopia
|
|
LocaleLanguage.LOGGER.error("Couldn't read strings from /assets/minecraft/lang/en_us.json", ioexception);
|
|
+ } else { // Yatopia start
|
|
+ LocaleLanguage.LOGGER.error("Couldn't read strings from custom locale file. Please check that your custom Locale File is formatted correctly", ioexception);
|
|
+ } // Yatopia end
|
|
}
|
|
|
|
final Map<String, String> map = builder.build();
|