Exemple #1
0
    public void SendClient(Net_Msg msg)
    {
        byte[]          buffer    = new byte[BYTE_SIZE];
        BinaryFormatter formatter = new BinaryFormatter();
        MemoryStream    ms        = new MemoryStream(buffer);

        formatter.Serialize(ms, msg);
        NetworkTransport.Send(hostId, 1, reliableChannel, buffer, BYTE_SIZE, out error);
        NetworkTransport.Send(hostId, 2, reliableChannel, buffer, BYTE_SIZE, out error);
    }
Exemple #2
0
    public void SendPoisition()
    {
        pos = player.transform.position;
        Net_Msg msg = new Net_Msg();

        msg.positionX = pos.x;
        msg.positionY = pos.y;
        msg.positionZ = pos.z;
        SendServer(msg);
    }
Exemple #3
0
    public void UpdateScene(int connID, int recConnID, Net_Msg msg)
    {
        GameObject playerUpdate;

        print("Jogador" + connID + " Recebendo dados do jogador " + recConnID);
        if (recConnID == 1)
        {
            playerUpdate = GameObject.Find("Player2");
        }
        else
        {
            playerUpdate = GameObject.Find("Player1");
        }
    }
Exemple #4
0
    public void UpdateMessagePump()
    {
        if (!isStarted)
        {
            return;
        }
        int recHostId;       // Is this from web or Stanlonne?
        int recConnectionId; //Which user is sendind me this?
        int channelId;       // Which lane is sending that message from?

        byte[] recBuffer = new byte[BYTE_SIZE];
        int    dataSize;


        NetworkEventType type = NetworkTransport.Receive(out recHostId, out recConnectionId, out channelId, recBuffer, BYTE_SIZE, out dataSize, out error);

        switch (type)
        {
        case NetworkEventType.Nothing:
            break;

        case NetworkEventType.ConnectEvent:
            Debug.Log("we have connected to the server");
            //We create enable the player and control him
            break;

        case NetworkEventType.DisconnectEvent:
            Debug.Log("We have been disconnected");
            break;

        // This is what the client recives from the Socket/ Host:
        case NetworkEventType.DataEvent:
            MemoryStream    ms        = new MemoryStream(recBuffer);
            BinaryFormatter formatter = new BinaryFormatter();
            Net_Msg         msg       = (Net_Msg)formatter.Deserialize(ms);
            //We need to find the gameObject from this other connectionID
            UpdateScene(connectionId, recConnectionId, msg);
            break;

        default:
        case NetworkEventType.BroadcastEvent:
            Debug.Log("Unexpected network event type");
            break;
        }
    }
Exemple #5
0
    public void UpdateMessagePump()
    {
        if (!isStarted)
        {
            return;
        }
        int recHostId;    // Is this from web or Stanlonne?
        int connectionId; //Which user is sendind me this?
        int channelId;    // Which lane is sending that message from?

        byte[] recBuffer = new byte[BYTE_SIZE];
        int    dataSize;

        NetworkEventType type = NetworkTransport.Receive(out recHostId, out connectionId, out channelId, recBuffer, BYTE_SIZE, out dataSize, out error);

        switch (type)
        {
        case NetworkEventType.Nothing:
            break;

        case NetworkEventType.ConnectEvent:
            Debug.Log(string.Format("User {0} has connected!, trough {1}", connectionId, channelId));
            break;

        case NetworkEventType.DisconnectEvent:
            Debug.Log(string.Format("User {0} has disconnected!", connectionId));
            break;

        case NetworkEventType.DataEvent:
            BinaryFormatter formatter = new BinaryFormatter();
            MemoryStream    ms        = new MemoryStream(recBuffer);
            Net_Msg         msg       = (Net_Msg)formatter.Deserialize(ms);
            SendClient(msg);
            break;

        default:
        case NetworkEventType.BroadcastEvent:
            Debug.Log("Unexpected network event type");
            break;
        }
    }