public RakNetSession(RakNetServer server, IPEndPoint point, long clientID, short mtuSize)
 {
     this.server   = server;
     this.point    = point;
     this.clientID = clientID;
     this.mtuSize  = mtuSize;
     this.timedOut = 1000;
 }
        internal void Close(string msg, bool serverClose = true)
        {
            if (serverClose)
            {
                CLIENT_DISCONNECT_DataPacket pk = new CLIENT_DISCONNECT_DataPacket();
                pk.Encode();

                EncapsulatedPacket ep = new EncapsulatedPacket();
                ep.buffer      = pk.ToArray();
                ep.reliability = PacketReliability.UNRELIABLE;

                SendPacket(ep);
            }

            Server.Instance.NetworkManager.RemovePlayerFromRakNet(RakNetServer.IPEndPointToID(this.point));
            this.server.RemoveSession(this.point, msg);
        }