五子棋游戏源码(c#)

weblog 676 0 0

部分代码

void winJudge(int x,int y)
{
    //下棋之前记住改变的状态
    State s;
    //s = new State();
    if (states.count >= 6)
    {
        s = states.getAndRemoveLast();
        s.k_valueList = new ArrayList();
    }
    else
    {
        s = new State();
    }
    s.x = x;
    s.y = y;
    //记住坐标
    s.pictureBox=paintNode(x * 36 - 18, y * 36 - 18);//下棋
    chessBorad[x, y] = 2;//棋盘标记已下棋
    for (int k = 0; k < re.getCount(); k++)
    {//遍历所有的赢法
        if (wins[x, y, k])
        {//如果(x,y)这个点在某一种赢法中

            //记录之前的k中赢发的状态值
            s.k_valueList.Add(new K_Value(k, myWin[k], computerWin[k]));

            computerWin[k]++;  //那么该种赢法中有多了一个棋子
            myWin[k] = 999;  //那么我方的这种赢法就不可能赢了,设一个异常的值
            if (computerWin[k] == 5)
            { //如果计算机在某种赢法上连上了五个子,那么计算机就赢了,我方就输了
                MessageBox.Show("你输了");
                over = true; //结束游戏
                return;
            }
        }
    }
    states.add(s);
    if (!over)
    {//如果没有结束游戏
        me = !me;//换我方下棋
    }
}
猜你喜欢
五子棋 游戏 算法 数据结构 c 371 下篇分享c#~
weblog 740 exe文件:http://photo.jiajiajia.club/file/wuziqi.exe 扫雷exe文件:http://photo.jiajiajia.club/file
数据结构与算法 1163 java实现人机对战packagefir;importjava.awt.*;importjavax.swing.JPanel;/***有背景图片的Panel类*@authortntxia
游戏 算法 516 :packagewin;importjava.awt.EventQueue;importjava.util.Collections;importjava.util.HashMap
java基础 902 与补一.机器数和真值在学习原,反和补之前,需要先了解机器数和真值的概念.1、机器数一个数在计算机中的二进制表示形式,叫做这个数的机器数。机器数是带符号的,在计算机用一个数的最高位存放
official 64 《操作系统》操作系统作为系统资的管理者,当然也需要对内存进行管理,要管些什么呢?GTA的大小超过60GB,按理来说这个程序运行之前需要把60GB数据全部放入内存。然而,实际我的电脑内存才
weblog 2456 使用 this.panel.BackgroundImage=global::WindowsFormsApplication2.Properties.Resources.one; 这样就给一个panel设置了背景图片
其他 1610 1.什么是钩程序hook(钩)是windows提供的一种消息处理机制平台,是指在程序正常运行中接受信息之前预先启动的函数,用来检查和修改传给该程序的信息,(钩)实际上是一个处理消息的程序段,通
目录