Beispiel #1
0
 public static void StopDiscovery()
 {
     if (LiteNetLib4MirrorCore.State == LiteNetLib4MirrorCore.States.Discovery)
     {
         LiteNetLib4MirrorCore.StopTransport();
     }
 }
 public override void ClientDisconnect()
 {
     if (!LiteNetLib4MirrorServer.IsActive())
     {
         LiteNetLib4MirrorCore.StopTransport();
     }
 }
Beispiel #3
0
        internal static void ConnectClient(string code)
        {
            try
            {
                if (LiteNetLib4MirrorCore.State == LiteNetLib4MirrorCore.States.Discovery)
                {
                    LiteNetLib4MirrorCore.StopTransport();
                }
                EventBasedNetListener listener = new EventBasedNetListener();
                LiteNetLib4MirrorCore.Host      = new NetManager(listener);
                listener.NetworkReceiveEvent   += OnNetworkReceive;
                listener.NetworkErrorEvent     += OnNetworkError;
                listener.PeerConnectedEvent    += OnPeerConnected;
                listener.PeerDisconnectedEvent += OnPeerDisconnected;

                LiteNetLib4MirrorCore.SetOptions(false);

                LiteNetLib4MirrorCore.Host.Start();
                LiteNetLib4MirrorCore.Host.Connect(LiteNetLib4MirrorUtils.Parse(LiteNetLib4MirrorTransport.Singleton.clientAddress, LiteNetLib4MirrorTransport.Singleton.port), code);

                LiteNetLib4MirrorTransport.Polling = true;
                LiteNetLib4MirrorCore.State        = LiteNetLib4MirrorCore.States.ClientConnecting;
            }
            catch (Exception ex)
            {
                LiteNetLib4MirrorCore.State = LiteNetLib4MirrorCore.States.Idle;
                LiteNetLib4MirrorUtils.LogException(ex);
            }
        }
Beispiel #4
0
 private static void OnPeerDisconnected(NetPeer peer, DisconnectInfo disconnectinfo)
 {
     LiteNetLib4MirrorCore.State = LiteNetLib4MirrorCore.States.Idle;
     LiteNetLib4MirrorCore.LastDisconnectError  = disconnectinfo.SocketErrorCode;
     LiteNetLib4MirrorCore.LastDisconnectReason = disconnectinfo.Reason;
     LiteNetLib4MirrorTransport.Singleton.OnClientDisconnected.Invoke();
     LiteNetLib4MirrorCore.StopTransport();
 }
 private void OnDestroy()
 {
     LiteNetLib4MirrorCore.StopTransport();
     if (LiteNetLib4MirrorUtils.LastForwardedPort != 0)
     {
         NatDiscoverer.ReleaseAll();
         LiteNetLib4MirrorUtils.LastForwardedPort = 0;
     }
 }
Beispiel #6
0
 private static void OnPeerDisconnected(NetPeer peer, DisconnectInfo disconnectinfo)
 {
     if (disconnectinfo.AdditionalData.TryGetString(out string reason))
     {
         LastDisconnectReason = LiteNetLib4MirrorUtils.FromBase64(reason);
     }
     LiteNetLib4MirrorCore.State = LiteNetLib4MirrorCore.States.Idle;
     LiteNetLib4MirrorCore.LastDisconnectError  = disconnectinfo.SocketErrorCode;
     LiteNetLib4MirrorCore.LastDisconnectReason = disconnectinfo.Reason;
     LiteNetLib4MirrorTransport.Singleton.OnClientDisconnected.Invoke();
     LiteNetLib4MirrorCore.StopTransport();
 }
Beispiel #7
0
        private static void OnPeerDisconnected(NetPeer peer, DisconnectInfo disconnectinfo)
        {
            switch (disconnectinfo.Reason)
            {
            case DisconnectReason.ConnectionRejected:
                LiteNetLib4MirrorTransport.Singleton.OnConncetionRefused(disconnectinfo);
                LastDisconnectReason = null;
                break;

            case DisconnectReason.DisconnectPeerCalled when disconnectinfo.AdditionalData.TryGetString(out string reason) && !string.IsNullOrWhiteSpace(reason):
                LastDisconnectReason = LiteNetLib4MirrorUtils.FromBase64(reason);

                break;

            default:
                LastDisconnectReason = null;
                break;
            }
            LiteNetLib4MirrorCore.State = LiteNetLib4MirrorCore.States.Idle;
            LiteNetLib4MirrorCore.LastDisconnectError  = disconnectinfo.SocketErrorCode;
            LiteNetLib4MirrorCore.LastDisconnectReason = disconnectinfo.Reason;
            LiteNetLib4MirrorTransport.Singleton.OnClientDisconnected.Invoke();
            LiteNetLib4MirrorCore.StopTransport();
        }
 public override void Shutdown()
 {
     LiteNetLib4MirrorCore.StopTransport();
 }
 public override void ServerStop()
 {
     LiteNetLib4MirrorCore.StopTransport();
 }