@SuppressWarnings("unchecked") HelperProtocolListener(ProtocolSubscriptionBuilderImpl builder, List<BiConsumer<ProtocolSubscription, ? super PacketEvent>> handlers) { super(LoaderUtils.getPlugin(), builder.priority, builder.types); this.types = builder.types; this.exceptionConsumer = builder.exceptionConsumer; this.filters = builder.filters.toArray(new Predicate[builder.filters.size()]); this.preExpiryTests = builder.preExpiryTests.toArray(new BiPredicate[builder.preExpiryTests.size()]); this.midExpiryTests = builder.midExpiryTests.toArray(new BiPredicate[builder.midExpiryTests.size()]); this.postExpiryTests = builder.postExpiryTests.toArray(new BiPredicate[builder.postExpiryTests.size()]); this.handlers = handlers.toArray(new BiConsumer[handlers.size()]); Protocol.manager().addPacketListener(this); }
@SuppressWarnings("unchecked") HelperProtocolListener(ProtocolSubscriptionBuilderImpl builder, List<BiConsumer<ProtocolSubscription, ? super PacketEvent>> handlers) { super(LoaderUtils.getPlugin(), builder.priority, builder.types); this.types = builder.types; this.exceptionConsumer = builder.exceptionConsumer; this.filters = builder.filters.toArray(new Predicate[builder.filters.size()]); this.preExpiryTests = builder.preExpiryTests.toArray(new BiPredicate[builder.preExpiryTests.size()]); this.midExpiryTests = builder.midExpiryTests.toArray(new BiPredicate[builder.midExpiryTests.size()]); this.postExpiryTests = builder.postExpiryTests.toArray(new BiPredicate[builder.postExpiryTests.size()]); this.handlers = handlers.toArray(new BiConsumer[handlers.size()]); Protocol.manager().addPacketListener(this); }
@Override public void addPacketMonitor(Plugin plugin, PacketMonitor monitor, PacketType[] types) { CommonPacketMonitor commonMonitor = new CommonPacketMonitor(plugin, monitor, types); ProtocolLibrary.getProtocolManager().addPacketListener(commonMonitor); this.monitors.add(commonMonitor); }
@Override public void addPacketListener(Plugin plugin, PacketListener listener, PacketType[] types) { CommonPacketListener commonListener = new CommonPacketListener(plugin, listener, types); ProtocolLibrary.getProtocolManager().addPacketListener(commonListener); this.listeners.add(commonListener); }
public static void register() { ProtocolUtils.get().addPacketListener( new PacketAdapter(NeverLag.getInstance(), PacketType.Play.Client.SET_CREATIVE_SLOT) { @Override public void onPacketReceiving(PacketEvent e) { onSetCreativeSlotPacket(e); } }); }
private void register(Class<? extends PacketAdapter> clazz, Plugin plugin) { try { // Construct a new instance using reflection. PacketAdapter adapter = clazz.getDeclaredConstructor(Plugin.class).newInstance(plugin); ProtocolLibrary.getProtocolManager().addPacketListener(adapter); registeredPacketAdapters.add(adapter); } catch (Throwable t) { StaticLog.logWarning("Could not register packet level hook: " + clazz.getSimpleName()); StaticLog.logWarning(t); if (t.getCause() != null) { StaticLog.logWarning(t.getCause()); } } }
/** * Creates a new scoreboard manager for the packet system. * * @param plugin ScoreboardStats instance */ public PacketManager(ScoreboardStats plugin) { super(plugin); ProtocolLibrary.getProtocolManager().addPacketListener(new PacketListener(plugin, this)); }
manager.addPacketListener( new PacketAdapter(instance, ListenerPriority.NORMAL, Collections.singletonList(PacketType.Play.Server.CHAT), ListenerOptions.ASYNC) { @Override
public static void addPacketListeners() { // Add a client listener to cancel them interacting with uninteractable disguised entitys. // You ain't supposed to be allowed to 'interact' with a item that cannot be clicked. // Because it kicks you for hacking. clientInteractEntityListener = new PacketListenerClientInteract(libsDisguises); PacketListener tabListListener = new PacketListenerTabList(libsDisguises); ProtocolLibrary.getProtocolManager().addPacketListener(clientInteractEntityListener); ProtocolLibrary.getProtocolManager().addPacketListener(tabListListener); // Now I call this and the main listener is registered! setupMainPacketsListener(); }
public static void setHearDisguisesListener(boolean enabled) { if (soundsListenerEnabled != enabled) { soundsListenerEnabled = enabled; if (soundsListenerEnabled) { ProtocolLibrary.getProtocolManager().addPacketListener(soundsListener); } else { ProtocolLibrary.getProtocolManager().removePacketListener(soundsListener); } } }
public PacketListener updatePacketListener() { if (listener != null) { manager.removePacketListener(listener); } if (compareListener != null) { manager.removePacketListener(compareListener); } // Register the new listeners listener = createPacketListener(packetTypes.values()); compareListener = createCompareListener(compareTypes.values()); manager.addPacketListener(listener); manager.addPacketListener(compareListener); return listener; }
private void startLogging() { manager.removePacketListener(this); if (sendingTypes.isEmpty() && receivingTypes.isEmpty()) { return; } this.sendingWhitelist = ListeningWhitelist.newBuilder().types(sendingTypes).build(); this.receivingWhitelist = ListeningWhitelist.newBuilder().types(receivingTypes).build(); // Setup the file logger if it hasn't been already if (location == LogLocation.FILE && fileLogger == null) { fileLogger = Logger.getLogger("ProtocolLib-FileLogging"); for (Handler handler : fileLogger.getHandlers()) fileLogger.removeHandler(handler); fileLogger.setUseParentHandlers(false); try { File logFile = new File(plugin.getDataFolder(), "log.log"); FileHandler handler = new FileHandler(logFile.getAbsolutePath(), true); handler.setFormatter(new LogFormatter()); fileLogger.addHandler(handler); } catch (IOException ex) { plugin.getLogger().log(Level.SEVERE, "Failed to obtain log file:", ex); return; } } manager.addPacketListener(this); }
ProtocolLibrary.getProtocolManager().addPacketListener(mainListener);
/** * Construct a new entity hider. * * @param plugin * - the plugin that controls this entity hider. * @param policy * - the default visibility policy. */ public EntityHider(Plugin plugin, Policy policy) { Preconditions.checkNotNull(plugin, "plugin cannot be NULL."); // Save policy this.policy = policy; this.manager = ProtocolLibrary.getProtocolManager(); // Register events and packet listener plugin.getServer().getPluginManager().registerEvents( bukkitListener = constructBukkit(), plugin); manager.addPacketListener( protocolListener = constructProtocol(plugin)); }
public static void inst() { Preconditions.checkArgument(!loaded, "TagAPI is already instanced!"); loaded = true; Bukkit.getServer().getOnlinePlayers().forEach(player -> entityIdMap.put(player.getEntityId(), player)); Bukkit.getPluginManager().registerEvents(new TagPacket(), Main.getInst()); ProtocolLibrary.getProtocolManager().addPacketListener(new PacketAdapter(Main.getInst(), PacketType.Play.Server.PLAYER_INFO) { @Override public void onPacketSending(PacketEvent event) { if (event.getPacket().getPlayerInfoAction().read(0) != EnumWrappers.PlayerInfoAction.ADD_PLAYER) { return; } List<PlayerInfoData> newPlayerInfo = new ArrayList<>(); for (PlayerInfoData playerInfo : event.getPacket().getPlayerInfoDataLists().read(0)) { Player player; if (playerInfo == null || playerInfo.getProfile() == null || (player = Bukkit.getServer().getPlayer(playerInfo.getProfile().getUUID())) == null) { // Unknown Player newPlayerInfo.add(playerInfo); continue; } newPlayerInfo.add(new PlayerInfoData(getSentName(player.getEntityId(), playerInfo.getProfile(), event.getPlayer()), playerInfo.getPing(), playerInfo.getGameMode(), playerInfo.getDisplayName())); } event.getPacket().getPlayerInfoDataLists().write(0, newPlayerInfo); } }); }
public static void setInventoryListenerEnabled(boolean enabled) { if (inventoryModifierEnabled != enabled) { inventoryModifierEnabled = enabled; if (inventoryModifierEnabled) { ProtocolLibrary.getProtocolManager().addPacketListener(inventoryListener); } else { ProtocolLibrary.getProtocolManager().removePacketListener(inventoryListener); } for (Player player : Bukkit.getOnlinePlayers()) { Disguise disguise = DisguiseAPI.getDisguise(player, player); if (disguise != null) { if (viewDisguisesListenerEnabled && disguise.isSelfDisguiseVisible() && (disguise.isHidingArmorFromSelf() || disguise.isHidingHeldItemFromSelf())) { player.updateInventory(); } } } } }
manager.addPacketListener(handler.getNullPacketListener());
ProtocolLibrary.getProtocolManager().addPacketListener(viewDisguisesListener); } else { ProtocolLibrary.getProtocolManager().removePacketListener(viewDisguisesListener);
.listenerPriority(ListenerPriority.NORMAL); ProtocolLibrary.getProtocolManager().addPacketListener(new PacketAdapter(params) {