Update to Minecraft 1.20.5

By: md_5 <git@md-5.net>
This commit is contained in:
CraftBukkit/Spigot
2024-04-24 01:15:00 +10:00
parent 4deda9501f
commit 65bc2541a3
524 changed files with 7788 additions and 6181 deletions

View File

@@ -1,6 +1,6 @@
--- a/net/minecraft/network/protocol/PlayerConnectionUtils.java
+++ b/net/minecraft/network/protocol/PlayerConnectionUtils.java
@@ -9,6 +9,11 @@
@@ -10,6 +10,11 @@
import net.minecraft.util.thread.IAsyncTaskHandler;
import org.slf4j.Logger;
@@ -12,7 +12,7 @@
public class PlayerConnectionUtils {
private static final Logger LOGGER = LogUtils.getLogger();
@@ -22,6 +27,7 @@
@@ -23,6 +28,7 @@
public static <T extends PacketListener> void ensureRunningOnSameThread(Packet<T> packet, T t0, IAsyncTaskHandler<?> iasynctaskhandler) throws CancelledPacketHandleException {
if (!iasynctaskhandler.isSameThread()) {
iasynctaskhandler.executeIfPossible(() -> {

View File

@@ -1,43 +0,0 @@
--- a/net/minecraft/network/protocol/common/ServerboundCustomPayloadPacket.java
+++ b/net/minecraft/network/protocol/common/ServerboundCustomPayloadPacket.java
@@ -12,7 +12,7 @@
public record ServerboundCustomPayloadPacket(CustomPacketPayload payload) implements Packet<ServerCommonPacketListener> {
private static final int MAX_PAYLOAD_SIZE = 32767;
- private static final Map<MinecraftKey, PacketDataSerializer.a<? extends CustomPacketPayload>> KNOWN_TYPES = ImmutableMap.builder().put(BrandPayload.ID, BrandPayload::new).build();
+ private static final Map<MinecraftKey, PacketDataSerializer.a<? extends CustomPacketPayload>> KNOWN_TYPES = ImmutableMap.<MinecraftKey, PacketDataSerializer.a<? extends CustomPacketPayload>>builder().build(); // CraftBukkit - no special handling
public ServerboundCustomPayloadPacket(PacketDataSerializer packetdataserializer) {
this(readPayload(packetdataserializer.readResourceLocation(), packetdataserializer));
@@ -24,12 +24,13 @@
return (CustomPacketPayload) (packetdataserializer_a != null ? (CustomPacketPayload) packetdataserializer_a.apply(packetdataserializer) : readUnknownPayload(minecraftkey, packetdataserializer));
}
- private static DiscardedPayload readUnknownPayload(MinecraftKey minecraftkey, PacketDataSerializer packetdataserializer) {
+ private static UnknownPayload readUnknownPayload(MinecraftKey minecraftkey, PacketDataSerializer packetdataserializer) { // CraftBukkit
int i = packetdataserializer.readableBytes();
if (i >= 0 && i <= 32767) {
- packetdataserializer.skipBytes(i);
- return new DiscardedPayload(minecraftkey);
+ // CraftBukkit start
+ return new UnknownPayload(minecraftkey, packetdataserializer.readBytes(i));
+ // CraftBukkit end
} else {
throw new IllegalArgumentException("Payload may not be larger than 32767 bytes");
}
@@ -44,4 +45,14 @@
public void handle(ServerCommonPacketListener servercommonpacketlistener) {
servercommonpacketlistener.handleCustomPayload(this);
}
+
+ // CraftBukkit start
+ public record UnknownPayload(MinecraftKey id, io.netty.buffer.ByteBuf data) implements CustomPacketPayload {
+
+ @Override
+ public void write(PacketDataSerializer packetdataserializer) {
+ packetdataserializer.writeBytes(data);
+ }
+ }
+ // CraftBukkit end
}

View File

@@ -0,0 +1,24 @@
--- a/net/minecraft/network/protocol/common/custom/DiscardedPayload.java
+++ b/net/minecraft/network/protocol/common/custom/DiscardedPayload.java
@@ -4,16 +4,18 @@
import net.minecraft.network.codec.StreamCodec;
import net.minecraft.resources.MinecraftKey;
-public record DiscardedPayload(MinecraftKey id) implements CustomPacketPayload {
+public record DiscardedPayload(MinecraftKey id, io.netty.buffer.ByteBuf data) implements CustomPacketPayload { // CraftBukkit - store data
public static <T extends PacketDataSerializer> StreamCodec<T, DiscardedPayload> codec(MinecraftKey minecraftkey, int i) {
return CustomPacketPayload.codec((discardedpayload, packetdataserializer) -> {
+ packetdataserializer.writeBytes(discardedpayload.data); // CraftBukkit - serialize
}, (packetdataserializer) -> {
int j = packetdataserializer.readableBytes();
if (j >= 0 && j <= i) {
- packetdataserializer.skipBytes(j);
- return new DiscardedPayload(minecraftkey);
+ // CraftBukkit start
+ return new DiscardedPayload(minecraftkey, packetdataserializer.readBytes(j));
+ // CraftBukkit end
} else {
throw new IllegalArgumentException("Payload may not be larger than " + i + " bytes");
}

View File

@@ -1,6 +1,6 @@
--- a/net/minecraft/network/protocol/game/ClientboundInitializeBorderPacket.java
+++ b/net/minecraft/network/protocol/game/ClientboundInitializeBorderPacket.java
@@ -27,8 +27,10 @@
@@ -30,8 +30,10 @@
}
public ClientboundInitializeBorderPacket(WorldBorder worldborder) {

View File

@@ -1,6 +1,6 @@
--- a/net/minecraft/network/protocol/game/ClientboundSetBorderCenterPacket.java
+++ b/net/minecraft/network/protocol/game/ClientboundSetBorderCenterPacket.java
@@ -10,8 +10,10 @@
@@ -13,8 +13,10 @@
private final double newCenterZ;
public ClientboundSetBorderCenterPacket(WorldBorder worldborder) {
@@ -12,4 +12,4 @@
+ // CraftBukkit end
}
public ClientboundSetBorderCenterPacket(PacketDataSerializer packetdataserializer) {
private ClientboundSetBorderCenterPacket(PacketDataSerializer packetdataserializer) {

View File

@@ -4,4 +4,4 @@
+// mc-dev import
package net.minecraft.network.protocol.game;
import net.minecraft.network.PacketDataSerializer;
import net.minecraft.network.RegistryFriendlyByteBuf;

View File

@@ -1,6 +1,6 @@
--- a/net/minecraft/network/protocol/game/PacketPlayOutMultiBlockChange.java
+++ b/net/minecraft/network/protocol/game/PacketPlayOutMultiBlockChange.java
@@ -30,11 +30,19 @@
@@ -33,11 +33,19 @@
short short0 = (Short) shortiterator.next();
this.positions[j] = short0;
@@ -18,6 +18,6 @@
+ }
+ // CraftBukkit end
+
public PacketPlayOutMultiBlockChange(PacketDataSerializer packetdataserializer) {
private PacketPlayOutMultiBlockChange(PacketDataSerializer packetdataserializer) {
this.sectionPos = SectionPosition.of(packetdataserializer.readLong());
int i = packetdataserializer.readVarInt();

View File

@@ -4,4 +4,4 @@
+// mc-dev import
package net.minecraft.network.protocol.handshake;
import net.minecraft.network.EnumProtocol;
import net.minecraft.network.PacketDataSerializer;