Compare commits

...
5 Commits
Author SHA1 Message Date
retrooper 9ed9db88b7 bug fix, 1.3.6.3 release 🤦‍♂️ 2020-06-25 23:24:00 +02:00
purplexdev f52a05b477 1.3.6.2
* NettyPacketHandler.handlerName value set from "PacketListener" to "packet_handler" fixing all issues!
2020-06-25 22:54:30 +02:00
purplexdev 8936204849 1.3.6.1 2020-06-25 22:38:32 +02:00
purplexdev 50efff2819 Updated to 1.3.6
* Forgot to uninject on quit
2020-06-25 22:09:16 +02:00
purplexdev af325f9a62 Forgot to uninject onquit! 2020-06-25 22:08:41 +02:00
4 changed files with 23 additions and 54 deletions

No files matched your search

+1 -9
View File
@@ -6,7 +6,7 @@
<groupId>io.github.retrooper</groupId>
<artifactId>packetevents</artifactId>
<version>1.3.5.2</version>
<version>1.3.6.2</version>
<packaging>jar</packaging>
<name>packetevents</name>
<properties>
@@ -89,13 +89,5 @@
<version>4fdd683</version>
<scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/io.netty/netty-all -->
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-all</artifactId>
<version>4.1.50.Final</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
@@ -9,8 +9,6 @@ import io.github.retrooper.packetevents.event.PacketListener;
import io.github.retrooper.packetevents.event.impl.*;
import io.github.retrooper.packetevents.event.manager.EventManager;
import io.github.retrooper.packetevents.handler.NettyPacketHandler;
import io.github.retrooper.packetevents.packet.Packet;
import io.github.retrooper.packetevents.packet.PacketType;
import io.github.retrooper.packetevents.packetwrappers.Sendable;
import io.github.retrooper.packetevents.utils.NMSUtils;
import org.bukkit.Bukkit;
@@ -19,6 +17,7 @@ import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerMoveEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.plugin.Plugin;
import org.bukkit.scheduler.BukkitTask;
@@ -193,12 +192,7 @@ public final class PacketEvents implements PacketListener, Listener {
* @param player
*/
public static void injectPlayer(final Player player) {
final PlayerInjectEvent injectEvent = new PlayerInjectEvent(player);
PacketEvents.getEventManager().callEvent(injectEvent);
if (!injectEvent.isCancelled()) {
PacketEvents.getEventManager().callEvent(new PostPlayerInjectEvent(player));
NettyPacketHandler.injectPlayer(player);
}
NettyPacketHandler.injectPlayer(player);
}
/**
@@ -207,22 +201,9 @@ public final class PacketEvents implements PacketListener, Listener {
* @param player
*/
public static void uninjectPlayer(final Player player) {
final PlayerUninjectEvent uninjectEvent = new PlayerUninjectEvent(player);
PacketEvents.getEventManager().callEvent(uninjectEvent);
if(!uninjectEvent.isCancelled()) {
NettyPacketHandler.uninjectPlayer(player);
}
NettyPacketHandler.uninjectPlayer(player);
}
/**
* Returns whether we have injected the player
*
* @param player
* @return hasInjected
*/
public static boolean hasInjected(final Player player) {
return NettyPacketHandler.hasInjected(player);
}
/**
* Send a wrapped sendable packet to a player
@@ -262,10 +243,12 @@ public final class PacketEvents implements PacketListener, Listener {
@EventHandler
public void onJoin(final PlayerJoinEvent e) {
if (!hasInjected(e.getPlayer())) {
injectPlayer(e.getPlayer());
injectPlayer(e.getPlayer());
}
}
@EventHandler
public void onQuit(final PlayerQuitEvent e) {
uninjectPlayer(e.getPlayer());
}
@EventHandler
@@ -2,34 +2,32 @@ package io.github.retrooper.packetevents.handler;
import io.github.retrooper.packetevents.PacketEvents;
import io.github.retrooper.packetevents.enums.ServerVersion;
import io.github.retrooper.packetevents.event.impl.PacketReceiveEvent;
import io.github.retrooper.packetevents.event.impl.PacketSendEvent;
import io.github.retrooper.packetevents.event.impl.*;
import org.bukkit.entity.Player;
import java.util.HashSet;
import java.util.UUID;
import java.util.concurrent.Future;
public class NettyPacketHandler {
public static final String handlerName = "packet_handler";
private static final ServerVersion version = PacketEvents.getServerVersion();
public static final HashSet<UUID> injectedSet = new HashSet<UUID>();
public static void injectPlayer(final Player player) {
if (!hasInjected(player)) {
final PlayerInjectEvent injectEvent = new PlayerInjectEvent(player);
PacketEvents.getEventManager().callEvent(injectEvent);
if (!injectEvent.isCancelled()) {
if (version.isLowerThan(ServerVersion.v_1_8)) {
NettyPacketHandler_7.injectPlayer(player);
} else {
NettyPacketHandler_8.injectPlayer(player);
}
injectedSet.add(player.getUniqueId());
PacketEvents.getEventManager().callEvent(new PostPlayerInjectEvent(player));
}
}
public static Future<?> uninjectPlayer(final Player player) {
if (hasInjected(player)) {
injectedSet.remove(player.getUniqueId());
final PlayerUninjectEvent uninjectEvent = new PlayerUninjectEvent(player);
PacketEvents.getEventManager().callEvent(uninjectEvent);
if (!uninjectEvent.isCancelled()) {
if (version.isLowerThan(ServerVersion.v_1_8)) {
return NettyPacketHandler_7.uninjectPlayer(player);
} else {
@@ -39,13 +37,9 @@ public class NettyPacketHandler {
return null;
}
public static boolean hasInjected(final Player player) {
return injectedSet.contains(player.getUniqueId());
}
public static Object read(final Player receiver, final Object packet) {
public static Object write(final Player sender, final Object packet) {
final String packetName = packet.getClass().getSimpleName();
final PacketSendEvent packetSendEvent = new PacketSendEvent(receiver, packetName, packet);
final PacketSendEvent packetSendEvent = new PacketSendEvent(sender, packetName, packet);
PacketEvents.getEventManager().callEvent(packetSendEvent);
if (!packetSendEvent.isCancelled()) {
return packet;
@@ -53,9 +47,9 @@ public class NettyPacketHandler {
return null;
}
public static Object write(final Player sender, final Object packet) {
public static Object read(final Player receiver, final Object packet) {
final String packetName = packet.getClass().getSimpleName();
final PacketReceiveEvent packetReceiveEvent = new PacketReceiveEvent(sender, packetName, packet);
final PacketReceiveEvent packetReceiveEvent = new PacketReceiveEvent(receiver, packetName, packet);
PacketEvents.getEventManager().callEvent(packetReceiveEvent);
if (!packetReceiveEvent.isCancelled()) {
return packet;
@@ -14,7 +14,7 @@ final class NettyPacketHandler_8 {
final ChannelDuplexHandler channelDuplexHandler = new ChannelDuplexHandler() {
@Override
public void channelRead(ChannelHandlerContext ctx, Object msg) throws Exception {
Object packet = NettyPacketHandler.write(player, msg);
Object packet = NettyPacketHandler.read(player, msg);
if(packet == null) {
return;
}
@@ -23,7 +23,7 @@ final class NettyPacketHandler_8 {
@Override
public void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise) throws Exception {
Object packet = NettyPacketHandler.read(player, msg);
Object packet = NettyPacketHandler.write(player, msg);
if(packet == null) {
return;
}