Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 30885166 Update to Minecraft 1.16.4 CraftBukkit Changes: 3af81c71 Update to Minecraft 1.16.4 Spigot Changes: f011ca24 Update to Minecraft 1.16.4 Co-authored-by: Mariell Hoversholm <proximyst@proximyst.com>
48 lines
2.6 KiB
Diff
48 lines
2.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Isaac Moore <rmsy@me.com>
|
|
Date: Tue, 19 Apr 2016 14:09:31 -0500
|
|
Subject: [PATCH] Implement PlayerLocaleChangeEvent
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
|
|
index 64b310347db500a0b89b3c520a2a6fd795133deb..b4abf6a7ba8ce73868a3a63106ea542d0ca67024 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
|
|
@@ -1543,16 +1543,17 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
|
return s;
|
|
}
|
|
|
|
- public String locale = "en_us"; // CraftBukkit - add, lowercase
|
|
+ public String locale = null; // CraftBukkit - lowercase // Paper - default to null
|
|
public void a(PacketPlayInSettings packetplayinsettings) {
|
|
// CraftBukkit start
|
|
if (getMainHand() != packetplayinsettings.getMainHand()) {
|
|
PlayerChangedMainHandEvent event = new PlayerChangedMainHandEvent(getBukkitEntity(), getMainHand() == EnumMainHand.LEFT ? MainHand.LEFT : MainHand.RIGHT);
|
|
this.server.server.getPluginManager().callEvent(event);
|
|
}
|
|
- if (!this.locale.equals(packetplayinsettings.locale)) {
|
|
+ if (this.locale == null || !this.locale.equals(packetplayinsettings.locale)) { // Paper - check for null
|
|
PlayerLocaleChangeEvent event = new PlayerLocaleChangeEvent(getBukkitEntity(), packetplayinsettings.locale);
|
|
this.server.server.getPluginManager().callEvent(event);
|
|
+ new com.destroystokyo.paper.event.player.PlayerLocaleChangeEvent(this.getBukkitEntity(), this.locale, packetplayinsettings.locale).callEvent(); // Paper
|
|
}
|
|
this.locale = packetplayinsettings.locale;
|
|
this.clientViewDistance = packetplayinsettings.viewDistance;
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
|
index 9aca1c0198f4d9e0b8b632aead499aaed240b091..4148b53d08d7bde1c13d9cdca4330f1313b33409 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
|
@@ -1816,8 +1816,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
|
|
|
@Override
|
|
public String getLocale() {
|
|
- return getHandle().locale;
|
|
-
|
|
+ // Paper start - Locale change event
|
|
+ final String locale = getHandle().locale;
|
|
+ return locale != null ? locale : "en_us";
|
|
+ // Paper end
|
|
}
|
|
|
|
// Paper start
|