Пример #1
0
        private void OnApplicationQuit()
        {
            switch (networkType)
            {
            case NetworkType.SERVER:
                RSGNetwork.StopServer();
                break;

            case NetworkType.CLIENT:
                RSGNetwork.DisconnectFromServer();
                break;
            }
        }
Пример #2
0
        private void Start()
        {
            RSGNetwork.IPAddress  = ipAddress;
            RSGNetwork.PortNumber = serverPort;

            if (!ConnectOnStart)
            {
                return;
            }

            switch (networkType)
            {
            case NetworkType.SERVER:
                RSGNetwork.StartServer();
                break;

            case NetworkType.CLIENT:
                RSGNetwork.ConnectToServer();
                break;
            }
        }
Пример #3
0
        private IEnumerator HeartBeat()
        {
            while (true)
            {
                yield return(new WaitForSeconds(5f));

                if (IsServer)
                {
                    foreach (var client in RSGNetwork.Clients)
                    {
                        if (!client.Value.tcp.socket.IsConnected())
                        {
                            //Debug.Log("Client Disconnected (HB)");
                            client.Value.Disconnect();
                        }
                        else
                        {
                            client.Value.tcp.RPC("Ping");
                        }
                    }
                }
                else
                {
                    if (IsConnectedToServer)
                    {
                        if (!RSGNetwork.IsConencted)
                        {
                            //Debug.Log("Client Disconnected (HB)");
                            RSGNetwork.DisconnectFromServer();
                        }

                        //Debug.Log("Sending ping to server");
                        RSGNetwork.ServerRPC("Ping");
                    }
                }
            }
        }