  net/minecraft/item/ItemTool.java              |   2 +-
  net/minecraft/nbt/NBTTagCompound.java         |   4 +-
  .../network/NetHandlerPlayServer.java         |   2 +-
- net/minecraft/network/NetworkManager.java     |  58 ++--
+ net/minecraft/network/NetworkManager.java     |  55 ++--
  net/minecraft/network/NetworkSystem.java      |   2 +-
  .../play/server/SPacketCombatEvent.java       |   2 +-
  .../network/play/server/SPacketJoinGame.java  |   2 +

         }
         else
         {
@@ -148,6 +156,12 @@ public class NetworkManager extends SimpleChannelInboundHandler < Packet<? >>
     {
         if (this.channel.isOpen())
         {
+			// TODO: Client
+			PacketInputEvent event = new PacketInputEvent(p_channelRead0_2_);
+			WurstClient.INSTANCE.events.fire(event);
+			if(event.isCancelled())
+				return;
+			
             try

-import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.Marker;
-import org.apache.logging.log4j.MarkerManager;
+import net.wurstclient.event.EventFactory;
 
 public class NetworkManager extends SimpleChannelInboundHandler < Packet<? >>
 {
@@ -134,6 +130,17 @@ public class NetworkManager extends SimpleChannelInboundHandler < Packet<? >>
         if (p_exceptionCaught_2_ instanceof TimeoutException)
         {
             textcomponenttranslation = new TextComponentTranslation("disconnect.timeout", new Object[0]);
