Java实现两人五子棋游戏实现两人五子棋游戏(五五) 判断是否有一方胜出判断是否有一方胜出
主要为大家详细介绍了Java实现两人五子棋游戏,判断是否有一方胜出,具有一定的参考价值,感兴趣的小伙
伴们可以参考一下
之前的两篇文章:Java实现两人五子棋游戏(二) 画出棋盘;Java实现两人五子棋游戏(三) 画出棋子;Java实现两人五子棋游
戏(四) 落子动作的实现,可以点击查看。
前面我们已经画好了棋盘、棋子并且可以自由的落子了,那么接下来要实现的功能是判断是否有五连珠(暂时不考虑行棋
方)。
我们采用遍历棋盘已经落子的位置,查看每个落子点,在它的上下,左右,左下右上,左上右下四个方向的任一方向上是否有
五个连续的棋子。
第一步第一步,对棋子类进行改造,之前我们的棋子类只有颜色信息和落子状态,现在要新增一个int型的数据,用于记录遍历过程
中当前有几个珠子已知连续。
Chessman.java
package xchen.test.simpleGobang;
public class Chessman {
private int color;//1-white,0-black
private boolean placed = false;
int matchCount = 1;
public Chessman(int color,boolean placed){
this.color=color;
this.placed=placed;
}
public boolean getPlaced() {
return placed;
}
public void setPlaced(boolean placed) {
this.placed = placed;
}
public int getColor() {
return color;
}
public void setColor(int color) {
this.color = color;
}
}
第二步第二步,先从一个方向上判断是否有五连珠,这里采用左右方向作为尝试。
添加了一个isWin函数,用遍历整个棋盘上的有效棋子的方式,来进行胜出判断。
DrawChessBoard.java
package xchen.test.simpleGobang;