mirror of
https://github.com/YatopiaMC/Yatopia.git
synced 2024-10-01 08:38:00 +02:00
e2d915fabd
Upstream/An Sidestream has released updates that appears to apply and compile correctly This update has NOT been tested by YatopiaMC and as with ANY update, please do your own testing. Tuinity Changes: aaef5d7 Updated Upstream (Paper) 31e1268 Merge https://github.com/Spottedleaf/Tuinity into ver/1.16.4 957a2ef Fix chunk object leak Origami Changes: d41f0b3 Update Paper to 1.16.4 Purpur Changes: 519ac08 Updated Upstream (Paper) be5fcdd Fix book bug 21e0b98 Updated Upstream (Paper & Tuinity)
66 lines
3.7 KiB
Diff
66 lines
3.7 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Ivan Pekov <ivan@mrivanplays.com>
|
|
Date: Thu, 10 Sep 2020 21:16:40 +0300
|
|
Subject: [PATCH] Respect PlayerKickEvent leaveMessage
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
index d796f2e5bce4c244bb392185d7810815df964781..b1b22d652f0bc4b6d2bff57438861677e2f12803 100644
|
|
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
@@ -320,7 +320,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
|
this.networkManager.sendPacket(new PacketPlayOutKickDisconnect(ichatbasecomponent), (future) -> {
|
|
this.networkManager.close(ichatbasecomponent);
|
|
});
|
|
- this.a(ichatbasecomponent); // CraftBukkit - fire quit instantly
|
|
+ this.a(ichatbasecomponent, event.getLeaveMessage().equalsIgnoreCase(leaveMessage) ? null : event.getLeaveMessage()); // CraftBukkit - fire quit instantly // Yatopia
|
|
this.networkManager.stopReading();
|
|
MinecraftServer minecraftserver = this.minecraftServer;
|
|
NetworkManager networkmanager = this.networkManager;
|
|
@@ -1678,6 +1678,11 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
|
|
|
@Override
|
|
public void a(IChatBaseComponent ichatbasecomponent) {
|
|
+ // Yatopia start - added quitMessage parameter
|
|
+ a(ichatbasecomponent, null);
|
|
+ }
|
|
+ public void a(IChatBaseComponent ichatbasecomponent, String quitMessage) {
|
|
+ // Yatopia end
|
|
// CraftBukkit start - Rarely it would send a disconnect line twice
|
|
if (this.processedDisconnect) {
|
|
return;
|
|
@@ -1693,7 +1698,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
|
*/
|
|
|
|
this.player.p();
|
|
- String quitMessage = this.minecraftServer.getPlayerList().disconnect(this.player);
|
|
+ quitMessage = this.minecraftServer.getPlayerList().disconnect(this.player, quitMessage); // Yatopia
|
|
if ((quitMessage != null) && (quitMessage.length() > 0)) {
|
|
this.minecraftServer.getPlayerList().sendMessage(CraftChatMessage.fromString(quitMessage));
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
|
index ad756029c97bf73594eabb7ef5c803b205477777..7a065d4b83259874af07320806b852c9b6adafd2 100644
|
|
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
|
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
|
@@ -499,6 +499,11 @@ public abstract class PlayerList {
|
|
}
|
|
|
|
public String disconnect(EntityPlayer entityplayer) { // CraftBukkit - return string
|
|
+ // Yatopia start - add quitMessage parameter
|
|
+ return disconnect(entityplayer, null);
|
|
+ }
|
|
+ public String disconnect(EntityPlayer entityplayer, String quitMessage) {
|
|
+ // Yatopia end
|
|
WorldServer worldserver = entityplayer.getWorldServer();
|
|
|
|
entityplayer.a(StatisticList.LEAVE_GAME);
|
|
@@ -587,7 +592,7 @@ public abstract class PlayerList {
|
|
cserver.getScoreboardManager().removePlayer(entityplayer.getBukkitEntity());
|
|
// CraftBukkit end
|
|
|
|
- return entityplayer.didPlayerJoinEvent ? playerQuitEvent.getQuitMessage() : null; // CraftBukkit // Paper - don't print quit if we never printed join
|
|
+ return entityplayer.didPlayerJoinEvent ? quitMessage != null ? quitMessage : playerQuitEvent.getQuitMessage() : null; // CraftBukkit // Paper - don't print quit if we never printed join // Yatopia
|
|
}
|
|
|
|
// CraftBukkit start - Whole method, SocketAddress to LoginListener, added hostname to signature, return EntityPlayer
|