Java游戏开发 —— 象棋
公司来活了,忙,暂时没空写完象棋AI这块,等以后再完善吧!
引言:
象棋的代码实现有点复杂,尤其是计算机的AI算法,在网上找了很多资料,费了好半天劲才弄明白其实现的原理,真的挺开阔思路的,很有意思!
思路: 1、创建主窗口,加载菜单及游戏面板。
2、在游戏面板中初始化各种参数,并建立各种功能组件。
3、利用标签图像做棋子,并结合paint()函数。
4、利用mouseMoved()鼠标移动函数设置落子指示器的位置。
5、利用mouseClicked()鼠标单击函数来判断是否可以下棋,由哪方来下,判断是否平局或胜利。如果是人机对战要计算电脑要下棋的最佳位置。
6、游戏结束,收尾,准备下一局。
代码:
图片位置与包位置平齐,因为我装载图片时是从类路径开始取,取绝对路径是不认可的。
本游戏用的是JDK1.8,编码UTF-8;
共有4个类,Chess.java是游戏入口类。GameFrame.java是主窗口类。GamePanel.java是游戏面板类。GameLogic.java是游戏逻辑类。先一口气把所有的代码贴上来再说。
1、Chess.java 游戏入口类
2、GameFrame.java 主窗口类。
3、GamePanel.java 游戏面板类
4、GameLogic.java 游戏逻辑类。
