9
0
mirror of https://github.com/SparklyPower/SparklyPaper.git synced 2025-12-19 15:09:27 +00:00
Files
SparklyPaperMC/patches/server/0018-Add-ClientboundPacketPreDispatchEvent.patch
2024-06-17 23:22:18 -03:00

30 lines
1.6 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: MrPowerGamerBR <git@mrpowergamerbr.com>
Date: Mon, 10 Jun 2024 12:22:15 -0300
Subject: [PATCH] Add ClientboundPacketPreDispatchEvent
diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java
index 90a2c61c42cba7e38f167eccdd7a951a947963c4..f1bbe862dd044f755a789a3f9aa91078c86c8099 100644
--- a/src/main/java/net/minecraft/network/Connection.java
+++ b/src/main/java/net/minecraft/network/Connection.java
@@ -450,6 +450,18 @@ public class Connection extends SimpleChannelInboundHandler<Packet<?>> {
return;
}
+ // SparklyPaper start - Add ClientboundPacketPreDispatchEvent
+ net.minecraft.server.level.ServerPlayer serverPlayer = this.getPlayer();
+ org.bukkit.craftbukkit.entity.CraftPlayer craftPlayer = null;
+ if (serverPlayer != null)
+ craftPlayer = serverPlayer.getBukkitEntity();
+ net.sparklypower.sparklypaper.event.packet.ClientboundPacketPreDispatchEvent event = new net.sparklypower.sparklypaper.event.packet.ClientboundPacketPreDispatchEvent(!org.bukkit.Bukkit.isPrimaryThread(), craftPlayer, packet);
+ org.bukkit.Bukkit.getPluginManager().callEvent(event);
+ if (event.isCancelled())
+ return;
+ packet = (Packet<?>) event.getPacket();
+ // SparklyPaper end
+
packet.onPacketDispatch(this.getPlayer());
if (connected && (InnerUtil.canSendImmediate(this, packet)
|| (io.papermc.paper.util.MCUtil.isMainThread() && packet.isReady() && this.pendingActions.isEmpty()