为了账号安全,请及时绑定邮箱和手机立即绑定

三个白子连成串就提示白子赢了 最大值我已经射程5了

三个白子连成串就提示白子赢了   最大值我已经射程5了

正在回答

4 回答

thank you

0 回复 有任何疑惑可以回复我~
//判断是否存在横向的5颗白(黑)棋
private boolean checkHorizontal(int x, int y, List<Point> points)
{
    int count = 1;
    //向左
    for (int i = 1; i < MAX_COUNT_IN_LINE; i++)
    {
        if (points.contains(new Point(x - i, y)))
        {
            count++;
        } else
        {
            break;
        }
    }
    if (count == MAX_COUNT_IN_LINE) return true;

    //向右
    for (int i = 1; i < MAX_COUNT_IN_LINE; i++)
    {
        if (points.contains(new Point(x + i, y)))
        {
            count++;
        } else
        {
            break;
        }
    }
    if (count == MAX_COUNT_IN_LINE) return true;
    return false;
}


1 回复 有任何疑惑可以回复我~
#1

Pacey

注意循环中i=1;若i=0则会将本身这枚棋子计算三次,所以三字连珠就会提示胜利
2016-08-13 回复 有任何疑惑可以回复我~

我的也是同一个问题

5736ab06000150f504410067.jpg

5736ab060001ec0d05000299.jpg


1 回复 有任何疑惑可以回复我~
#1

Pacey

for循环改为 i = 1即可
2016-08-13 回复 有任何疑惑可以回复我~

把代码贴出来啊


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android-五子连珠
  • 参与学习       39006    人
  • 解答问题       166    个

Android游戏开发-五子连珠,本教程通过UI与逻辑实现双人对战

进入课程

三个白子连成串就提示白子赢了 最大值我已经射程5了

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信