示例#1
0
 public void ResetBlocks()
 {
     for (int i = 0; i < 4; i++)
     {
         mBlocks[i] = null;
     }
     mOffset.x = 0;
     mOffset.y = 0;
     mType     = PieceType.I;
     mRotate   = PieceRotate.None;
 }
示例#2
0
    //////////////////////////////////////////////////////////////////////////////////////////////////
    //////////////////////////////////////////////////////////////////////////////////////////////////
    //////////////////////////////////////////////////////////////////////////////////////////////////
    //////////////////////////////////////////////////////////////////////////////////////////////////
    //Setup

    public void SetBlocks(Vector3 nPosition, Vector3 nGridSize, Vector3 nBlockSize, GameObject[] nBlocks, PieceType nType, PieceRotate nRotate)
    {
        ResetBlocks();
        mType   = nType;
        mRotate = nRotate;
        Color nColor;

        switch (nType)
        {
        case PieceType.I:
            nColor = SetI(nGridSize, nBlocks);
            break;

        case PieceType.J:
            nColor = SetJ(nGridSize, nBlocks);
            break;

        case PieceType.L:
            nColor = SetL(nGridSize, nBlocks);
            break;

        case PieceType.O:
            nColor = SetO(nGridSize, nBlocks);
            break;

        case PieceType.S:
            nColor = SetS(nGridSize, nBlocks);
            break;

        case PieceType.T:
            nColor = SetT(nGridSize, nBlocks);
            break;

        default:         //case PieceType.Z:
            nColor = SetZ(nGridSize, nBlocks);
            break;
        }
        ResetBlocks(nPosition, nGridSize, nBlockSize, nColor);
    }