aboutsummaryrefslogtreecommitdiffhomepage
path: root/Spigot-Server-Patches/0159-Implement-getI18NDisplayName.patch
diff options
context:
space:
mode:
authorAikar <[email protected]>2020-06-28 04:35:41 -0400
committerAikar <[email protected]>2020-06-28 04:35:41 -0400
commitb6925c36afa7565cac8f9fe9d3432fe658ca1f77 (patch)
treed64424c2e64e933af075b26c6888e526d7633b69 /Spigot-Server-Patches/0159-Implement-getI18NDisplayName.patch
parent5e9cc3a2281589ee6e0ca736712432ba4a0935cd (diff)
downloadPaper-b6925c36afa7565cac8f9fe9d3432fe658ca1f77.tar.gz
Paper-b6925c36afa7565cac8f9fe9d3432fe658ca1f77.zip
Remove no longer needed undead horse leash patch
This is now default vanilla behavior Fixes #3644
Diffstat (limited to 'Spigot-Server-Patches/0159-Implement-getI18NDisplayName.patch')
-rw-r--r--Spigot-Server-Patches/0159-Implement-getI18NDisplayName.patch58
1 files changed, 58 insertions, 0 deletions
diff --git a/Spigot-Server-Patches/0159-Implement-getI18NDisplayName.patch b/Spigot-Server-Patches/0159-Implement-getI18NDisplayName.patch
new file mode 100644
index 0000000000..e2e3acd4e2
--- /dev/null
+++ b/Spigot-Server-Patches/0159-Implement-getI18NDisplayName.patch
@@ -0,0 +1,58 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Aikar <[email protected]>
+Date: Wed, 4 May 2016 23:59:38 -0400
+Subject: [PATCH] Implement getI18NDisplayName
+
+Gets the Display name as seen in the Client.
+Currently the server only supports the English language. To override this,
+You must replace the language file embedded in the server jar.
+
+diff --git a/src/main/java/net/minecraft/server/LocaleLanguage.java b/src/main/java/net/minecraft/server/LocaleLanguage.java
+index ea7cb9943dc6da7a05e0841985eb1be4b6bc5169..c83ba9d9869f8ba51df17963d530536d2a08c263 100644
+--- a/src/main/java/net/minecraft/server/LocaleLanguage.java
++++ b/src/main/java/net/minecraft/server/LocaleLanguage.java
+@@ -29,7 +29,7 @@ public abstract class LocaleLanguage {
+
+ private static LocaleLanguage c() {
+ Builder<String, String> builder = ImmutableMap.builder();
+- BiConsumer biconsumer = builder::put;
++ BiConsumer<String, String> biconsumer = builder::put; // Paper - decompile fix
+
+ try {
+ InputStream inputstream = LocaleLanguage.class.getResourceAsStream("/assets/minecraft/lang/en_us.json");
+@@ -91,10 +91,12 @@ public abstract class LocaleLanguage {
+
+ }
+
++ public static LocaleLanguage getInstance() { return a(); } // Paper - OBFHELPER
+ public static LocaleLanguage a() {
+ return LocaleLanguage.d;
+ }
+
++ public String translateKey(String key) { return a(key); } // Paper - OBFHELPER
+ public abstract String a(String s);
+
+ public abstract boolean b(String s);
+diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
+index efa013a8bf91df0b71cbf01d2c1b1099ac616c57..0d62f3ae939557b73c79792d6c2a0fd42513c8b8 100644
+--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
++++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java
+@@ -331,5 +331,18 @@ public final class CraftItemFactory implements ItemFactory {
+ public ItemStack ensureServerConversions(ItemStack item) {
+ return CraftItemStack.asCraftMirror(CraftItemStack.asNMSCopy(item));
+ }
++
++ @Override
++ public String getI18NDisplayName(ItemStack item) {
++ net.minecraft.server.ItemStack nms = null;
++ if (item instanceof CraftItemStack) {
++ nms = ((CraftItemStack) item).handle;
++ }
++ if (nms == null) {
++ nms = CraftItemStack.asNMSCopy(item);
++ }
++
++ return nms != null ? net.minecraft.server.LocaleLanguage.getInstance().translateKey(nms.getItem().getName()) : null;
++ }
+ // Paper end
+ }