Esempio n. 1
0
    void onHealth(SocketIOEvent socketIOEvent)
    {
        string         data       = socketIOEvent.data.ToString();
        UserHealthJSON healthData = UserHealthJSON.CreateFromJSON(data);

        GameObject p = GameObject.Find(healthData.name);
        TankHealth h = p.GetComponent <TankHealth> ();

        h.m_CurrentHealth = healthData.health;
        h.OnHealthChange();
    }
Esempio n. 2
0
    void onPlayerConnected(SocketIOEvent socketIOEvent)
    {
        string     data     = socketIOEvent.data.ToString();
        UserJSON   userData = UserJSON.CreateFromJSON(data);
        Vector3    position = new Vector3(userData.position [0], userData.position [1], userData.position [2]);
        Quaternion rotation = Quaternion.Euler(0f, userData.rotation, 0f);
        Color      playerColor;

        ColorUtility.TryParseHtmlString(userData.playerColor, out playerColor);

        var tank = GameObject.Find(userData.name) as GameObject;

        if (tank != null)
        {
            return;
        }
        GameObject p = Instantiate(player, position, rotation) as GameObject;

        p.name = userData.name;

        TankMovement movement = p.GetComponent <TankMovement> ();

        movement.isLocalPlayer = false;

        TankShooting shooting = p.GetComponent <TankShooting> ();

        shooting.isLocalPlayer = false;
        shooting.playerName    = userData.name;

        TankHealth health = p.GetComponent <TankHealth> ();

        health.m_CurrentHealth = userData.health;
        health.OnHealthChange();

        MeshRenderer[] renderers = p.GetComponentsInChildren <MeshRenderer> ();
        for (int i = 0; i < renderers.Length; i++)
        {
            renderers[i].material.color = playerColor;
        }
    }