Exemplo n.º 1
0
 // Use this for initialization
 void Start()
 {
     serverStream = PublicLevel.GetServerStream();
     // Start TcpServer background thread
     tcpListenerThread = new Thread(new ThreadStart(ListenForIncommingRequests));
     tcpListenerThread.IsBackground = true;
     tcpListenerThread.Start();
 }
Exemplo n.º 2
0
    public static IEnumerator ListenForHostileCreatureList(float waitTime)
    {
        yield return(new WaitForSeconds(waitTime));

        buffer = new byte[bufferSize];
        try
        {
            Vector2Int[] _hostileType = new Vector2Int[PublicLevel.usingCreatureNum];
            PublicLevel.GetServerStream().BeginRead(buffer, 0, bufferSize, OnReceive, null);

            creatureReceiveSuccess = true;
            // load after creaturelist receive is complete
            LoadingSceneManager.LoadScene("DefaultIngameCopy");
        }
        catch (Exception listSendException)
        {
            Debug.Log("ListSendException " + listSendException.ToString());
            StageButtonMultiplayer.NetworkErrorPanelactive();
        }
        StageButtonMultiplayer.SetCreatureFlag(true);
        StageButtonMultiplayer.NetworkWaitPanelInactive();
    }
Exemplo n.º 3
0
    public static bool SendCreatureList()
    {
        buffer = new byte[bufferSize];
        try
        {
            // create a socket for streaming data

            string       serverMessage = "";
            Vector2Int[] friendlyType  = PublicLevel.GetFriendlyType();
            for (int i = 0; i < PublicLevel.usingCreatureNum; ++i)
            {
                serverMessage = serverMessage + friendlyType[i].x.ToString() + ',' + friendlyType[i].y.ToString() + " ";
            }
            buffer = Encoding.ASCII.GetBytes(serverMessage);
            PublicLevel.GetServerStream().Write(buffer, 0, buffer.Length);
            ClearBuffer(buffer);
        }
        catch (SocketException socketException)
        {
            Debug.Log("SocketException " + socketException.ToString());
            return(false);
        }
        return(true);
    }