homework -06 围棋

playPrev功能的实现

        public void playPrev(ref GoMove gm)
{
Point p = gm.Point;
m_colorToPlay = gm.Color;
clearLabelsAndMarksOnBoard();
m_gmLastMove = gameTree.peekPrev();
bDrawMark = true;
Grid[p.X, p.Y].die();
if (gm.DeadGroup != null)
{
foreach (Point s in gm.DeadGroup)
{
Grid[s.X, s.Y].setStone(gm.DeadGroupColor);
}
}
optRepaint();
textBox1.Clear();
textBox1.AppendText(gm.Comment);
return;
}

方法是把棋子die(),然后遍历deadgroup,最终optrepaint重画

程序不足

1、变量名字好坑爹,一会有高端的Deadgroup,一会又变成低端的textbox1。。。不解释

2、看warning,很多变量存在但是没有使用过

3、程序没有合理规划,想到哪里写到哪里

注释在github上。。由于之前写了一次homework-06.。这次就命名为homework-06x

https://github.com/mxc11061102/homework-06x/blob/master/buaa_GO/Goboard.cs

上一篇:Sql 字符串替换


下一篇:Apache Spark Shark的简介