Пример #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="NetServer"/> class. We can simulate real world network conditions by using the simMinTimeout/simMaxTimeout params
        /// to simulate connection lag.
        /// </summary>
        /// <param name="maxConnections">Max connections.</param>
        /// <param name="port">Port.</param>
        /// <param name="simMinTimeout">Minimum lag timeout to simulate in ms. Set to zero for none.</param>
        /// <param name="simMaxTimeout">Maximum lag timeout to simulate in ms. Set to zero for none.</param>
        ///
        public NetServer(int maxConnections, int port, int simMinTimeout = 0, int simMaxTimeout = 0)
        {
            if (!NetManager.mIsInitialized)
            {
                Debug.Log("NetServer( ... ) - NetManager was not initialized. Did you forget to call NetManager.Init()?");
                return;
            }

            HostTopology ht = new HostTopology(NetManager.mConnectionConfig, maxConnections);

            if (simMinTimeout != 0 || simMaxTimeout != 0)
            {
                mSocket = NetworkTransport.AddHostWithSimulator(ht, simMinTimeout, simMaxTimeout, port);
            }
            else
            {
                mSocket = NetworkTransport.AddHost(ht, port);
            }

            mPort = port;

            if (!NetUtils.IsSocketValid(mSocket))
            {
                Debug.Log("NetServer::NetServer( " + maxConnections + " , " + port.ToString() + " ) returned an invalid socket ( " + mSocket.ToString() + " )");
            }

            mIsRunning = true;
        }
Пример #2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="NetClient"/> class.
        /// </summary>
        /// <param name="socket">Valid socket id for the NetClient. Given by NetManager.</param>
        public NetClient()
        {
            HostTopology ht      = new HostTopology(NetManager.mConnectionConfig, 1);        // Clients only need 1 connection
            int          csocket = NetworkTransport.AddHost(ht);

            if (!NetUtils.IsSocketValid(csocket))
            {
                Debug.Log("NetManager::CreateClient() returned an invalid socket ( " + csocket + " )");
            }

            mSocket = csocket;
        }