From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: MelnCat Date: Sat, 24 Sep 2022 09:56:28 -0700 Subject: [PATCH] Add item packet serialize event diff --git a/src/main/java/net/minecraft/network/FriendlyByteBuf.java b/src/main/java/net/minecraft/network/FriendlyByteBuf.java index 32ee4ed11aefd82dca2e3e78b3108f041fdc3695..314318a21b6fa9e827945d8996c6ed0f9679a4eb 100644 --- a/src/main/java/net/minecraft/network/FriendlyByteBuf.java +++ b/src/main/java/net/minecraft/network/FriendlyByteBuf.java @@ -89,6 +89,8 @@ public class FriendlyByteBuf extends ByteBuf { private static final int MAX_PUBLIC_KEY_HEADER_SIZE = 256; private static final int MAX_PUBLIC_KEY_LENGTH = 512; + public static boolean hasItemSerializeEvent = false; // Purpur + public FriendlyByteBuf(ByteBuf parent) { this.source = parent; } @@ -632,6 +634,13 @@ public class FriendlyByteBuf extends ByteBuf { this.writeBoolean(false); } else { this.writeBoolean(true); + // Purpur start + if (hasItemSerializeEvent) { + var event = new org.purpurmc.purpur.event.packet.NetworkItemSerializeEvent(stack.asBukkitCopy()); + event.callEvent(); + stack = ItemStack.fromBukkitCopy(event.getItemStack()); + } + // Purpur end Item item = stack.getItem(); this.writeId(BuiltInRegistries.ITEM, item); diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java index 99727dd2ee576c8c2fe2be1e6dcf9b1f6be0c894..b915e6a13a518f05d109c707142efa3946892f0c 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1535,6 +1535,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop 0; // Purpur Iterator iterator = this.getAllLevels().iterator(); // Paper - move down while (iterator.hasNext()) { ServerLevel worldserver = (ServerLevel) iterator.next();