如何编程游戏,scratch编程小游戏教程视频( 六 )


                    i = k + 1;
                    flag = true;
                }
                else if (chessboard[i][j] != chessboard[k][j] && k < 4)//不匹配
                {
                    i = k;
                }
            }
        }
    for (j = 0; j < m; j++)//排列棋盘
        for (i = 0, count2 = 0; i < m; i++)
        {
            if (chessboard[i][j] != 0)
            {
                temp2 = chessboard[i][j];
                chessboard[i][j] = 0;
                chessboard[count2][j] = temp2;
                count2++;
            }
        }
}
四、判断游戏结束

bool game::gameover()
{
    if (flag)
        count1++;//判连消
    if (temp1 == count1)
        count1 = 0;//未消除,连消归零
    add(count1);
    for (i = m - 1, j = 0; j < m; j++)//最后一行
    {
        if (j == m - 1)//右下角
        {
            if (chessboard[i][j] == 0)
                return false;
            else if (chessboard[i][j] == 2048)
            {
                cout << "You Win~\n";
                return true;
            }
        }
        else
        {
            if (chessboard[i][j] == 0 || chessboard[i][j] == chessboard[i][j + 1])
                return false;
            else if (chessboard[i][j] == 2048)
            {
                cout << "You Win~\n";
                return true;
            }
        }
    }
    for (i = 0, j = m - 1; i < m; i++)//最后一列
    {
        if (i == m - 1)//右下角
        {
            if (chessboard[i][j] == 0)
                return false;
            else if (chessboard[i][j] == 2048)
            {
                cout << "You Win~\n";
                return true;
            }
        }
        else
        {
            if (chessboard[i][j] == 0 || chessboard[i][j] == chessboard[i + 1][j])

推荐阅读