public Packet RecievePacket()
        {
            bool valid = false;

            while (!valid)
            {
                P2Packet packet = RecieveRaw();
                if (packet.SteamId == NetClient.instanceClient.serversSteamID)
                {
                    valid = true;
                    return(ENSSerialization.DeserializePacket(packet.Data));
                }
            }
            return(null);
        }
 public Packet Recieve()
 {
     while (true)
     {
         try
         {
             P2Packet recieved = RecieveMessage();
             Packet   p        = ENSSerialization.DeserializePacket(recieved.Data);
             if (NetServer.serverInstance.VerifyPacketValidity(recieved.SteamId, p))//(recieved.Key != null)
             {
                 return(p);
             }
             Debug.Log("Couldn't verify packet's validity");
         } catch (System.Exception e)
         {
             if (e.ToString().Contains("NullReferenceException") || e.ToString().Contains("ThreadAbortException"))
             {
                 return(null); //Most likely the editor closed abruptly or server closed.
             }
             Debug.LogError(e);
         }
     }
 }