Exemple #1
0
    private IEnumerator CheckLines()
    {
        int blocksOnTheLine, destroyedLines = 0;

        for (int i = 0; i < length; i++)
        {
            yield return(new WaitForFixedUpdate());

            blocksOnTheLine = 0;

            for (int j = 0; j < width; j++)
            {
                if (grid[j, i])
                {
                    blocksOnTheLine++;
                }
            }

            if (blocksOnTheLine == 0)
            {
                break;
            }

            else if (blocksOnTheLine == width)
            {
                StartCoroutine(DestroyLine(i));
                destroyedLines++;
            }

            else if (destroyedLines > 0)
            {
                StartCoroutine(DownLine(i, destroyedLines));
            }
        }

        if (destroyedLines == 4)
        {
            StartCoroutine(TetrisEffect());
        }

        ss.AddLines(destroyedLines);

        //DebugGrid();
    }