Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class ChatPacketListener {
- @PacketListener
- public void onChatOutgoing(PacketEvent<SPacketChat> event, Connection connection) {
- SPacketChat packet = event.getPacket(); // Immutable packet instance
- if (cancel) {
- event.setCancelled(true);
- } else if (transformPacket) {
- event.setPacket(new SPacketChat("lol I manipulated your packet"))
- } else if (replacePacket) {
- connection.sendPacket();
- }
- }
- @PacketListener
- public void onChatIncoming(PacketEvent<CPacketChatMessage> event, Connection connection) {
- CPacketChatMessage packet = event.getPacket(); // Immutable packet instance
- if (packet.getMessage().contains("shit")) {
- connection.sendPacket(new SPacketChat("Please watch your language"));
- event.setCancelled(true);
- } else if (packet.getMessage().equals("plis let me swear")) {
- connection.sendPacket(new SPacketChat("k lol"));
- PacketInterceptor.unregisterListener(this);
- event.setCancelled(true);
- }
- }
- }
- // usage example - register ChatPacketListener to one specific connection only.
- // It's also possible to register global listeners by omitting the clientConnection argument.
- @Listener
- public void onPlayerJoin(ClientConnectionEvent.Join event) {
- Player player = event.getTargetEntity();
- ClientConnection clientConnection = PacketInterceptor.getClientConnection(player);
- PacketInterceptor.registerListener(new ChatPacketListener(), clientConnection);
- }
Advertisement
Add Comment
Please, Sign In to add comment