From 0c5a42a344f66c6705c720e95fcb9248cb59dab3 Mon Sep 17 00:00:00 2001 From: William Date: Fri, 9 Aug 2024 14:22:53 +0100 Subject: [PATCH] fix: Cancel outbound PacketEvents packets, close #344 --- .../BukkitPacketEventsLockedPacketListener.java | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/bukkit/src/main/java/net/william278/husksync/listener/BukkitPacketEventsLockedPacketListener.java b/bukkit/src/main/java/net/william278/husksync/listener/BukkitPacketEventsLockedPacketListener.java index a707d63f..dc66a8c4 100644 --- a/bukkit/src/main/java/net/william278/husksync/listener/BukkitPacketEventsLockedPacketListener.java +++ b/bukkit/src/main/java/net/william278/husksync/listener/BukkitPacketEventsLockedPacketListener.java @@ -23,6 +23,7 @@ import com.github.retrooper.packetevents.PacketEvents; import com.github.retrooper.packetevents.event.PacketListenerAbstract; import com.github.retrooper.packetevents.event.PacketListenerPriority; import com.github.retrooper.packetevents.event.PacketReceiveEvent; +import com.github.retrooper.packetevents.event.PacketSendEvent; import com.github.retrooper.packetevents.protocol.packettype.PacketType; import com.google.common.collect.Sets; import io.github.retrooper.packetevents.factory.spigot.SpigotPacketEventsBuilder; @@ -78,7 +79,20 @@ public class BukkitPacketEventsLockedPacketListener extends BukkitLockedEventLis @Override public void onPacketReceive(PacketReceiveEvent event) { - if(!(event.getPacketType() instanceof PacketType.Play.Client client)) { + if (!(event.getPacketType() instanceof PacketType.Play.Client client)) { + return; + } + if (!CANCEL_PACKETS.contains(client)) { + return; + } + if (listener.cancelPlayerEvent(event.getUser().getUUID())) { + event.setCancelled(true); + } + } + + @Override + public void onPacketSend(PacketSendEvent event) { + if (!(event.getPacketType() instanceof PacketType.Play.Client client)) { return; } if (!CANCEL_PACKETS.contains(client)) {