mirror of
https://github.com/PaperMC/Paper.git
synced 2024-11-26 12:36:07 +01:00
0fb3daf4f6
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
CraftBukkit Changes:
a05df28a7
SPIGOT-6122: Revert "SPIGOT-5794: Do not skip PlayerInteractEvent"
85 lines
4.2 KiB
Diff
85 lines
4.2 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: DigitalRegent <misterwener@gmail.com>
|
|
Date: Sat, 11 Apr 2020 13:10:58 +0200
|
|
Subject: [PATCH] Brand support
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
index 2ac264d0b4946d22877f002a86b39e11593c8c90..3aa56d5246660aa49fa881f0b3c80c986cb4a27f 100644
|
|
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
|
@@ -4,6 +4,7 @@ import com.google.common.primitives.Doubles;
|
|
import com.google.common.primitives.Floats;
|
|
import com.mojang.brigadier.ParseResults;
|
|
import com.mojang.brigadier.StringReader;
|
|
+import io.netty.buffer.Unpooled;
|
|
import io.netty.util.concurrent.Future;
|
|
import io.netty.util.concurrent.GenericFutureListener;
|
|
import it.unimi.dsi.fastutil.ints.Int2ShortMap;
|
|
@@ -108,6 +109,8 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
|
private static final int MAX_SIGN_LINE_LENGTH = Integer.getInteger("Paper.maxSignLength", 80);
|
|
private static final long KEEPALIVE_LIMIT = Long.getLong("paper.playerconnection.keepalive", 30) * 1000; // Paper - provide property to set keepalive limit
|
|
|
|
+ private String clientBrandName = null; // Paper - Brand name
|
|
+
|
|
public PlayerConnection(MinecraftServer minecraftserver, NetworkManager networkmanager, EntityPlayer entityplayer) {
|
|
this.minecraftServer = minecraftserver;
|
|
this.networkManager = networkmanager;
|
|
@@ -2738,6 +2741,8 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
|
private static final MinecraftKey CUSTOM_REGISTER = new MinecraftKey("register");
|
|
private static final MinecraftKey CUSTOM_UNREGISTER = new MinecraftKey("unregister");
|
|
|
|
+ private static final MinecraftKey MINECRAFT_BRAND = new MinecraftKey("brand"); // Paper - Brand support
|
|
+
|
|
@Override
|
|
public void a(PacketPlayInCustomPayload packetplayincustompayload) {
|
|
PlayerConnectionUtils.ensureMainThread(packetplayincustompayload, this, this.player.getWorldServer());
|
|
@@ -2765,6 +2770,16 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
|
try {
|
|
byte[] data = new byte[packetplayincustompayload.data.readableBytes()];
|
|
packetplayincustompayload.data.readBytes(data);
|
|
+
|
|
+ // Paper start - Brand support
|
|
+ if (packetplayincustompayload.tag.equals(MINECRAFT_BRAND)) {
|
|
+ try {
|
|
+ this.clientBrandName = new PacketDataSerializer(Unpooled.copiedBuffer(data)).readUTF(256);
|
|
+ } catch (StringIndexOutOfBoundsException ex) {
|
|
+ this.clientBrandName = "illegal";
|
|
+ }
|
|
+ }
|
|
+ // Paper end
|
|
server.getMessenger().dispatchIncomingMessage(player.getBukkitEntity(), packetplayincustompayload.tag.toString(), data);
|
|
} catch (Exception ex) {
|
|
PlayerConnection.LOGGER.error("Couldn\'t dispatch custom payload", ex);
|
|
@@ -2774,6 +2789,12 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
|
|
|
}
|
|
|
|
+ // Paper start - brand support
|
|
+ public String getClientBrandName() {
|
|
+ return clientBrandName;
|
|
+ }
|
|
+ // Paper end
|
|
+
|
|
public final boolean isDisconnected() {
|
|
return (!this.player.joining && !this.networkManager.isConnected()) || this.processedDisconnect; // Paper
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
|
index 9a812b34698feb7d09f1063a913363b3ea6820eb..c756b2f3faf253420b4d5737389acaa2f38b34ab 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
|
@@ -2143,6 +2143,13 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
|
// Paper end
|
|
};
|
|
|
|
+ // Paper start - brand support
|
|
+ @Override
|
|
+ public String getClientBrandName() {
|
|
+ return getHandle().playerConnection.getClientBrandName();
|
|
+ }
|
|
+ // Paper end
|
|
+
|
|
public Player.Spigot spigot()
|
|
{
|
|
return spigot;
|