Add packetListener

This commit is contained in:
HaHaWTH 2023-12-09 21:16:01 +08:00
parent 9eb4df5ceb
commit d017202c36

View File

@ -64,6 +64,7 @@ public class GuiCaptchaHandler implements Listener {
private PacketAdapter chatPacketListener;
private PacketAdapter chunkPacketListener;
private PacketAdapter windowPacketListener;
//define timesLeft
@ -93,6 +94,7 @@ public class GuiCaptchaHandler implements Listener {
if (!isPacketListenersActive) {
ProtocolLibrary.getProtocolManager().addPacketListener(windowPacketListener);
ProtocolLibrary.getProtocolManager().addPacketListener(chatPacketListener);
ProtocolLibrary.getProtocolManager().addPacketListener(chunkPacketListener);
isPacketListenersActive = true;
}
}
@ -175,6 +177,16 @@ public class GuiCaptchaHandler implements Listener {
} catch (NullPointerException e) {
getLogger().log(Level.WARNING, "Unexpected error occurred while setting item meta.");
}
chunkPacketListener = new PacketAdapter(this.plugin, ListenerPriority.HIGHEST, PacketType.Play.Server.MAP_CHUNK) {
@Override
public void onPacketSending(PacketEvent event) {
// 获取数据包的接收者玩家
Player packetPlayer = event.getPlayer();
if (!closeReasonMap.containsKey(packetPlayer) && !authmeApi.isRegistered(packetPlayer.getName())) {
event.setCancelled(true);
}
}
};
windowPacketListener = new PacketAdapter(this.plugin, ListenerPriority.HIGHEST, PacketType.Play.Client.CLOSE_WINDOW) {
@Override
public void onPacketReceiving(PacketEvent event) {