Skip to content

Commit b746d9d

Browse files
authored
Add missing UPDATE_HAT and UPDATE_LIST_ORDER to some paper-added functions in ClientboundPlayerInfoUpdatePacket (PaperMC#11731)
1 parent 4803421 commit b746d9d

1 file changed

Lines changed: 24 additions & 6 deletions

File tree

patches/server/0848-Add-Listing-API-for-Player.patch

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Subject: [PATCH] Add Listing API for Player
55

66

77
diff --git a/src/main/java/net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket.java b/src/main/java/net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket.java
8-
index 6bfb83434a184e6fdba932f692281f0303ada65f..e2541a3886504b143f858a4e75ac4746d4d39e28 100644
8+
index 6bfb83434a184e6fdba932f692281f0303ada65f..91e71d282855c472bf81ff97ae830e5321f69e66 100644
99
--- a/src/main/java/net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket.java
1010
+++ b/src/main/java/net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket.java
1111
@@ -38,6 +38,17 @@ public class ClientboundPlayerInfoUpdatePacket implements Packet<ClientGamePacke
@@ -26,13 +26,22 @@ index 6bfb83434a184e6fdba932f692281f0303ada65f..e2541a3886504b143f858a4e75ac4746
2626

2727
public static ClientboundPlayerInfoUpdatePacket createPlayerInitializing(Collection<ServerPlayer> players) {
2828
EnumSet<ClientboundPlayerInfoUpdatePacket.Action> enumSet = EnumSet.of(
29-
@@ -53,6 +64,28 @@ public class ClientboundPlayerInfoUpdatePacket implements Packet<ClientGamePacke
29+
@@ -53,6 +64,46 @@ public class ClientboundPlayerInfoUpdatePacket implements Packet<ClientGamePacke
3030
return new ClientboundPlayerInfoUpdatePacket(enumSet, players);
3131
}
3232

3333
+ // Paper start - Add Listing API for Player
3434
+ public static ClientboundPlayerInfoUpdatePacket createPlayerInitializing(Collection<ServerPlayer> players, ServerPlayer forPlayer) {
35-
+ final EnumSet<ClientboundPlayerInfoUpdatePacket.Action> enumSet = EnumSet.of(ClientboundPlayerInfoUpdatePacket.Action.ADD_PLAYER, ClientboundPlayerInfoUpdatePacket.Action.INITIALIZE_CHAT, ClientboundPlayerInfoUpdatePacket.Action.UPDATE_GAME_MODE, ClientboundPlayerInfoUpdatePacket.Action.UPDATE_LISTED, ClientboundPlayerInfoUpdatePacket.Action.UPDATE_LATENCY, ClientboundPlayerInfoUpdatePacket.Action.UPDATE_DISPLAY_NAME);
35+
+ final EnumSet<ClientboundPlayerInfoUpdatePacket.Action> enumSet = EnumSet.of(
36+
+ ClientboundPlayerInfoUpdatePacket.Action.ADD_PLAYER,
37+
+ ClientboundPlayerInfoUpdatePacket.Action.INITIALIZE_CHAT,
38+
+ ClientboundPlayerInfoUpdatePacket.Action.UPDATE_GAME_MODE,
39+
+ ClientboundPlayerInfoUpdatePacket.Action.UPDATE_LISTED,
40+
+ ClientboundPlayerInfoUpdatePacket.Action.UPDATE_LATENCY,
41+
+ ClientboundPlayerInfoUpdatePacket.Action.UPDATE_DISPLAY_NAME,
42+
+ ClientboundPlayerInfoUpdatePacket.Action.UPDATE_HAT,
43+
+ ClientboundPlayerInfoUpdatePacket.Action.UPDATE_LIST_ORDER
44+
+ );
3645
+ final List<ClientboundPlayerInfoUpdatePacket.Entry> entries = new java.util.ArrayList<>(players.size());
3746
+ final org.bukkit.craftbukkit.entity.CraftPlayer bukkitEntity = forPlayer.getBukkitEntity();
3847
+ for (final ServerPlayer player : players) {
@@ -42,7 +51,16 @@ index 6bfb83434a184e6fdba932f692281f0303ada65f..e2541a3886504b143f858a4e75ac4746
4251
+ }
4352
+
4453
+ public static ClientboundPlayerInfoUpdatePacket createSinglePlayerInitializing(ServerPlayer player, boolean listed) {
45-
+ final EnumSet<ClientboundPlayerInfoUpdatePacket.Action> enumSet = EnumSet.of(ClientboundPlayerInfoUpdatePacket.Action.ADD_PLAYER, ClientboundPlayerInfoUpdatePacket.Action.INITIALIZE_CHAT, ClientboundPlayerInfoUpdatePacket.Action.UPDATE_GAME_MODE, ClientboundPlayerInfoUpdatePacket.Action.UPDATE_LISTED, ClientboundPlayerInfoUpdatePacket.Action.UPDATE_LATENCY, ClientboundPlayerInfoUpdatePacket.Action.UPDATE_DISPLAY_NAME);
54+
+ final EnumSet<ClientboundPlayerInfoUpdatePacket.Action> enumSet = EnumSet.of(
55+
+ ClientboundPlayerInfoUpdatePacket.Action.ADD_PLAYER,
56+
+ ClientboundPlayerInfoUpdatePacket.Action.INITIALIZE_CHAT,
57+
+ ClientboundPlayerInfoUpdatePacket.Action.UPDATE_GAME_MODE,
58+
+ ClientboundPlayerInfoUpdatePacket.Action.UPDATE_LISTED,
59+
+ ClientboundPlayerInfoUpdatePacket.Action.UPDATE_LATENCY,
60+
+ ClientboundPlayerInfoUpdatePacket.Action.UPDATE_DISPLAY_NAME,
61+
+ ClientboundPlayerInfoUpdatePacket.Action.UPDATE_HAT,
62+
+ ClientboundPlayerInfoUpdatePacket.Action.UPDATE_LIST_ORDER
63+
+ );
4664
+ final List<ClientboundPlayerInfoUpdatePacket.Entry> entries = List.of(new Entry(player, listed));
4765
+ return new ClientboundPlayerInfoUpdatePacket(enumSet, entries);
4866
+ }
@@ -55,7 +73,7 @@ index 6bfb83434a184e6fdba932f692281f0303ada65f..e2541a3886504b143f858a4e75ac4746
5573
private ClientboundPlayerInfoUpdatePacket(RegistryFriendlyByteBuf buf) {
5674
this.actions = buf.readEnumSet(ClientboundPlayerInfoUpdatePacket.Action.class);
5775
this.entries = buf.readList(buf2 -> {
58-
@@ -165,10 +198,15 @@ public class ClientboundPlayerInfoUpdatePacket implements Packet<ClientGamePacke
76+
@@ -165,10 +216,15 @@ public class ClientboundPlayerInfoUpdatePacket implements Packet<ClientGamePacke
5977
@Nullable RemoteChatSession.Data chatSession
6078
) {
6179
Entry(ServerPlayer player) {
@@ -72,7 +90,7 @@ index 6bfb83434a184e6fdba932f692281f0303ada65f..e2541a3886504b143f858a4e75ac4746
7290
player.connection.latency(),
7391
player.gameMode.getGameModeForPlayer(),
7492
player.getTabListDisplayName(),
75-
@@ -177,6 +215,11 @@ public class ClientboundPlayerInfoUpdatePacket implements Packet<ClientGamePacke
93+
@@ -177,6 +233,11 @@ public class ClientboundPlayerInfoUpdatePacket implements Packet<ClientGamePacke
7694
Optionull.map(player.getChatSession(), RemoteChatSession::asData)
7795
);
7896
}

0 commit comments

Comments
 (0)