コード例 #1
0
    // num : 해당 라인에서 부숴지지 않아야 할 큐브의 갯수
    // groups : 부숴지지 않아야 할 큐브들이 몇 개의 뭉치로 나누어져있는지 갯수 (2개면 동그라미, 3개 이상이면 네모를 추가로 그림)

    void SetNumberClue(int faceIndex, int num, Puzzle.CLUE_SHAPE shape)
    {
        Material[] materialsArray = faceMeshRanders[faceIndex].materials;
        // 숫자 쓰기
        Material numberClueMaterial = Resources.Load <Material>(@"cubeFace/Materials/clue-" + num.ToString());

        materialsArray[(int)MATERIAL_INDEX.NUMBERCLUE] = numberClueMaterial;

        // 모양 그리기
        switch (shape)
        {
        case Puzzle.CLUE_SHAPE.NONE:
            break;

        case Puzzle.CLUE_SHAPE.CIRCLE:
        {
            Material circleMaterial = Resources.Load <Material>("cubeFace/Materials/circle");
            materialsArray[(int)MATERIAL_INDEX.CIRCLE_SQAURE] = circleMaterial;
        }
        break;

        case Puzzle.CLUE_SHAPE.SQUARE:
        {
            Material squareMaterial = Resources.Load <Material>("cubeFace/Materials/square");
            materialsArray[(int)MATERIAL_INDEX.CIRCLE_SQAURE] = squareMaterial;
        }
        break;
        }

        faceMeshRanders[faceIndex].materials = materialsArray;
    }
コード例 #2
0
    public void SetFrontBackNumberClue(int num, Puzzle.CLUE_SHAPE shape)
    {
        if (num < 0)
        {
            return;
        }

        SetNumberClue((int)FACE_INDEX.FRONT, num, shape);
        SetNumberClue((int)FACE_INDEX.BACK, num, shape);
    }
コード例 #3
0
    public void SetTopBottomNumberClue(int num, Puzzle.CLUE_SHAPE shape)
    {
        if (num < 0)
        {
            return;
        }

        SetNumberClue((int)FACE_INDEX.TOP, num, shape);
        SetNumberClue((int)FACE_INDEX.BOTTOM, num, shape);
    }
コード例 #4
0
    public void SetRightLeftNumberClue(int num, Puzzle.CLUE_SHAPE shape)
    {
        if (num < 0)
        {
            return;
        }

        SetNumberClue((int)FACE_INDEX.RIGHT, num, shape);
        SetNumberClue((int)FACE_INDEX.LEFT, num, shape);
    }