diff --git a/patches/api/Add-PlayerKickEvent-causes.patch b/patches/api/Add-PlayerKickEvent-causes.patch index 512930bf4b..4c9a874ac6 100644 --- a/patches/api/Add-PlayerKickEvent-causes.patch +++ b/patches/api/Add-PlayerKickEvent-causes.patch @@ -105,6 +105,8 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + + INVALID_PAYLOAD, + ++ INVALID_COOKIE, ++ + SPAM, + + ILLEGAL_ACTION, diff --git a/patches/server/Add-PlayerKickEvent-causes.patch b/patches/server/Add-PlayerKickEvent-causes.patch index f2dc7bfeb9..252ff48618 100644 --- a/patches/server/Add-PlayerKickEvent-causes.patch +++ b/patches/server/Add-PlayerKickEvent-causes.patch @@ -144,6 +144,15 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 // Paper start - adventure pack callbacks // call the callbacks before the previously-existing event so the event has final say @@ -0,0 +0,0 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack + return; + } + // CraftBukkit end +- this.disconnect(ServerCommonPacketListenerImpl.DISCONNECT_UNEXPECTED_QUERY); ++ this.disconnect(ServerCommonPacketListenerImpl.DISCONNECT_UNEXPECTED_QUERY, org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_COOKIE); // Paper - kick event cause + } + + protected void keepConnectionAlive() { +@@ -0,0 +0,0 @@ public abstract class ServerCommonPacketListenerImpl implements ServerCommonPack if (!this.isSingleplayerOwner() && elapsedTime >= KEEPALIVE_LIMIT) { // Paper - check keepalive limit, don't fire if already disconnected if (this.keepAlivePending && !this.processedDisconnect) { // Paper diff --git a/patches/server/Fix-several-issues-with-EntityBreedEvent.patch b/patches/server/Fix-several-issues-with-EntityBreedEvent.patch index 86aac87593..024d81250f 100644 --- a/patches/server/Fix-several-issues-with-EntityBreedEvent.patch +++ b/patches/server/Fix-several-issues-with-EntityBreedEvent.patch @@ -68,6 +68,21 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 } else { if (this.level().isClientSide || this.isSitting() || this.isInWater()) { return InteractionResult.PASS; +diff --git a/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java b/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java +index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +--- a/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java ++++ b/src/main/java/net/minecraft/world/entity/animal/armadillo/Armadillo.java +@@ -0,0 +0,0 @@ public class Armadillo extends Animal { + } + + @Override +- public void setInLove(@Nullable Player player) { +- super.setInLove(player); ++ public void setInLove(@Nullable Player player, @Nullable ItemStack breedItemCopy) { // Paper ++ super.setInLove(player, breedItemCopy); // Paper + this.makeSound(SoundEvents.ARMADILLO_EAT); + } + diff --git a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java b/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 --- a/src/main/java/net/minecraft/world/entity/animal/camel/Camel.java diff --git a/patches/server/Optimize-Hoppers.patch b/patches/server/Optimize-Hoppers.patch index 961c9c8aeb..df3570c495 100644 --- a/patches/server/Optimize-Hoppers.patch +++ b/patches/server/Optimize-Hoppers.patch @@ -471,11 +471,6 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 } @@ -0,0 +0,0 @@ public class HopperBlockEntity extends RandomizableContainerBlockEntity implemen - } - } - -+ @io.papermc.paper.annotation.DoNotUse // Paper - Optimize hoppers - private static boolean tryTakeInItemFromSlot(Hopper ihopper, Container iinventory, int i, Direction enumdirection, Level world) { // Spigot ItemStack itemstack = iinventory.getItem(i); if (!itemstack.isEmpty() && HopperBlockEntity.canTakeItemFromContainer(ihopper, iinventory, itemstack, i, enumdirection)) {