예제 #1
0
    // Use this for initialization
    void Start()
    {
        tower_pos = new Vector3[2*max_towers];
        tower_rots = new Quaternion[2*max_towers];
        normals = new Vector3[2*max_towers];
        num_towers = 0;
        max_towers = 1;
        next_b = 0;
        index = 0;
        foreach (Player p in players) {
            p.my_turn = false;
            p.manager = this;
        }
        players[0].my_turn = true;

        GameObject cam = GameObject.Find("Main Camera");
        my_camera = cam.GetComponent<freeFlyCamera>();
    }
    // Use this for initialization
    void Start()
    {
        num_towers = 0;
        playernum = PlayerPrefs.GetInt("myNum");
        currentMaxPlayers = PlayerPrefs.GetInt("connectedPlayers");
        max_towers = PlayerPrefs.GetInt("numTowers");
        num_computers = PlayerPrefs.GetInt("numAIs");
        startingTime = (float)PlayerPrefs.GetInt("timeout");
        timeLeft = startingTime;

        tower_pos = new Vector3[2*max_towers];
        tower_rots = new Quaternion[2*max_towers];
        normals = new Vector3[2*max_towers];
        objects = new GameObject[2*max_towers];

        MAX_TOWERS = max_towers;
        next_b = 0;
        index = 0;
        GameObject tempObj = (GameObject)(GameObject.Instantiate(PlayerPrefab));
        player = tempObj.GetComponent<PlayerTestExpansion>();
        currentColor = PlayerPrefs.GetInt("currentTeam");
        player.color = teams[currentColor];
        player.callSign = PlayerPrefs.GetString("currentCall");
        player.my_turn = false;
        player.manager = this;
        callSign = player.callSign;

        //players[0].my_turn = true;

        GameObject cam = GameObject.Find("Main Camera");
        my_camera = cam.GetComponent<freeFlyCamera>();

        myStyle = new GUIStyle();
        myStyle.font = warning;
        myStyle.alignment = TextAnchor.MiddleCenter;
        myStyle.fontSize = 20;
        myStyle.normal.textColor = Color.red;
        myStyle.normal.background = null;

        if(Network.isServer)
        {
            computers = new PlayerTestExpansion[num_computers];
            comp_t = new int[computers.Length];
            comp_names = new string[computers.Length];
            for (int i = 0; i < num_computers; i++)
            {
                computers[i] = (GameObject.Instantiate(PlayerPrefab) as GameObject).GetComponent<PlayerTestExpansion>();
                computers[i].color = teams[PlayerPrefs.GetInt("ai"+i+"team")];
                computers[i].callSign = PlayerPrefs.GetString("ai"+i+"name");
                comp_t[i] = PlayerPrefs.GetInt("ai"+i+"team");
                comp_names[i] = PlayerPrefs.GetString("ai"+i+"name");
            }
            foreach (PlayerTestExpansion p in computers) {
                p.my_turn = false;
                p.manager = this;
            }
            comp_p = new Vector3[computers.Length];
            comp_n = new Vector3[computers.Length];
            comp_o = new GameObject[computers.Length];

            networkView.RPC("setStartIndex",RPCMode.All,Mathf.FloorToInt(Random.value*currentMaxPlayers));
            if (num_computers>0 && comp_o[0]==null)
            {
                float rr = 150;
                for (int i = 0; i < computers.Length; i++)
                {
                    computers[i].comp_createTower(Random.Range(-rr,rr),Random.Range(-rr,rr),i,computers[i].color);
                }
            }
        }
    }
예제 #3
0
    // Use this for initialization
    void Start()
    {
        num_towers = 0;
        max_towers = 2;

        tower_pos = new Vector3[2][];//,2*max_towers];
        tower_rots = new Quaternion[2][];//,2*max_towers];
        normals = new Vector3[2][];//,2*max_towers];
        objects = new GameObject[2][];//,2*max_towers];

        for (int i = 0; i < 2; i++)
        {
            tower_pos[i] = new Vector3[2*max_towers];
            tower_rots[i] = new Quaternion[2*max_towers];
            normals[i] = new Vector3[2*max_towers];
            objects[i] = new GameObject[2*max_towers];
        }

        computers = new Player[num_computers];
        for (int i = 0; i < num_computers; i++)
        {
            computers[i] = (GameObject.Instantiate(PlayerPrefab) as GameObject).GetComponent<Player>();
            computers[i].color = new Color(Random.Range(0.0f,1.0f),Random.Range(0.0f,1.0f),Random.Range(0.0f,1.0f));
        }
        comp_p = new Vector3[computers.Length];
        comp_n = new Vector3[computers.Length];
        comp_o = new GameObject[computers.Length];

        MAX_TOWERS = max_towers;
        next_b = 0;
        index = 0;
        foreach (Player p in players) {
            p.my_turn = false;
            p.manager = this;
        }
        foreach (Player p in computers) {
            p.my_turn = false;
            p.manager = this;
        }
        //players[0].my_turn = true;

        GameObject cam = GameObject.Find("Main Camera");
        my_camera = cam.GetComponent<freeFlyCamera>();

        myStyle = new GUIStyle();
        myStyle.font = warning;
        myStyle.alignment = TextAnchor.MiddleCenter;
        myStyle.fontSize = 20;
        myStyle.normal.textColor = Color.red;
        myStyle.normal.background = null;
    }