コード例 #1
0
ファイル: UICellDrawer.cs プロジェクト: sjyou12/ColorShift
        public GameObject Draw(Label label, int index, int Maxindex)
        {
            GameObject uiCell;
            Material   material;
            Sprite     sprite;

            if (!ImageCell)
            {
                uiCell   = GameObject.Instantiate(Resources.Load <GameObject>("prefabs/UICell"));
                material = uiCell.GetComponent <MeshRenderer>().material;
                material.SetColor("_LineColor", CellColor.getLineColorOf(label));
                material.SetColor("_BackgroundColor", CellColor.getBackgroundColorOf(label));
                material.SetFloat("_Offset", UnityEngine.Random.value);

                uiCell.GetComponent <CellScript>().index    = index;
                uiCell.GetComponent <CellScript>().Maxindex = Maxindex;
            }
            else
            {
                uiCell = GameObject.Instantiate(Resources.Load <GameObject>("prefabs/UIImageCell"));
                //Cell의 label에 따라 다른 이미지를 가져온다
                sprite = FlowerFetcher(label);
                uiCell.GetComponent <SpriteRenderer>().sprite = sprite;
                uiCell.GetComponent <CellScript>().index      = index;
                uiCell.GetComponent <CellScript>().Maxindex   = Maxindex;
            }
            return(uiCell);
        }
コード例 #2
0
ファイル: CellDrawer.cs プロジェクト: sjyou12/ColorShift
        public GameObject Draw(Cell cell)
        {
            GameObject cellPrefab;
            GameObject cellGameObject;
            Material   material;
            Sprite     sprite;

            if (!ImageCell)
            {
                cellPrefab     = Resources.Load <GameObject>("prefabs/Cell");
                cellGameObject = GameObject.Instantiate(cellPrefab);
                material       = cellGameObject.GetComponent <MeshRenderer>().material;
                material.SetColor("_LineColor", CellColor.getLineColorOf(cell.label));
                material.SetColor("_BackgroundColor", CellColor.getBackgroundColorOf(cell.label));
                material.SetFloat("_Offset", UnityEngine.Random.value);

                // Add Goal Mark to Goal Cell
                if (cell.label.FallIn(Label.GOAL))
                {
                    var goalMarker         = GameObject.Instantiate(cellGameObject);
                    var goalMarkerMaterial = Resources.Load <Material>("materials/BorderMaterial");
                    goalMarker.GetComponent <MeshRenderer>().material = goalMarkerMaterial;
                    goalMarker.transform.parent = cellGameObject.transform;
                }
            }
            else
            {
                cellPrefab     = Resources.Load <GameObject>("prefabs/ImageCell");
                cellGameObject = GameObject.Instantiate(cellPrefab);
                //Cell의 label에 따라 다른 이미지를 가져온다
                sprite = FlowerFetcher(cell.label);
                cellGameObject.GetComponent <SpriteRenderer>().sprite = sprite;

                if (cell.label.FallIn(Label.GOAL))
                {
                    var goalMarker = GameObject.Instantiate(Resources.Load <GameObject>("prefabs/Goal"));
                    goalMarker.transform.parent = cellGameObject.transform;
                    var lp = goalMarker.transform.localPosition;
                    goalMarker.transform.localPosition = new Vector3(0, 0, lp.z);
                }
                cellGameObject.GetComponent <SpriteRenderer>().sortingLayerName = "Cell";
            }
            return(cellGameObject);
        }