Example #1
0
    // 重新生成地图
    void NewGame()
    {
        var size = stars[0].GetComponent <RectTransform>().sizeDelta;

        totalPoint = 0;
        UpdateText();
        for (int r = 0; r < 9; r++)
        {
            for (int c = 0; c < 9; c++)
            {
                int        type    = Random.Range(0, stars.Length);
                Vector3    offset  = new Vector3(c * size.y, -r * size.x, 0f);
                Vector3    dest    = starMap.startPt.localPosition + offset;
                GameObject starObj = Instantiate(stars[type], dest, Quaternion.identity) as GameObject;
                starObj.transform.SetParent(ParentObj.transform, false);
                starObj.name = "star_" + r + "_" + c;

                Star starInstance = starObj.GetComponent <Star>();
                starInstance.onClickStarEvent.AddListener(OnClickStarAction);     // 监听事件处理
                starInstance.Init((StarType)type, new Vector2(r, c));
                starMap.SetStarToMap(r, c, starObj);
            }
        }
    }