团队-团队编程项目作业名称-项目进度
1.项目名称:象棋游戏
2.小组成员:高鲁莹,王梓晗,董馨遥,杨璐,崔晓爽,安泽鹏
3.开发背景
周围有很多人喜欢玩象棋游戏,本以为是很简单的开发过程,没想到费了这么多周折,开发出的也仅仅能进行人机对战。
4.需求分析
棋盘棋子的局面、鼠标响应控制棋子移动、棋子的走法规则、人机对弈的搜索算法、胜负判断。
5.我们实现了棋子的走法
棋盘:九条平行的竖线和十条平行的横线相交而组成,其中共有九十个交叉点,棋子就摆在这些交叉点上。
中间部分(棋盘的第五,第六两横线之间末画竖线的空白地带)叫做河界 。
两端的中间(两端第四条到第六条竖线之间的正方形部位),以斜交叉线构成中文“米”字形方格的地方,叫作 九宫。
棋子分为:象棋共有三十二枚棋子。分红、黑两方,每方各十六枚棋子。
红方(帅 *1、士 *2、象 *2、马 *2、车 *2、炮 *2、兵 *5)
黑方(将 *1、士 *2、象 *2、马 *2、车 *2、炮 *2、卒 *5)
帅(将):红方中的帅和黑方中的将的功能相同,都是只能在九宫格中进行横向和竖向的移动,每次移动一格,并且不能移动超出九宫格,帅和将不能见面。
士:士在整片棋盘中,和帅的移动范围类似,也是只能在九宫格中移动,不过士的移动方向是对角线,并且每次只能在一个格子中移动。
象:象的走法遵循“象走田”的原则,不能绊象腿。
马:马的走法遵循“马走日”的原则,不能绊马腿。
车:在整块棋盘中,车可以横向或纵向移动任意格。
炮:每次移动和车的类似,但是在吃对方棋子的时候必须中间有且只能有一个棋子的间隔。
兵(卒):红方的兵和黑方的卒的功能相同,特点是只能向对方前进,而不能后退,过河之前不能横向移动,过河之后可以横向移动,不管是前进还是横
向移动,每次都只能移动一格。
6.遇到的问题
当棋子走一步但是在这个过程中有障碍物;棋子依然能够走过去,当棋子要吃掉棋子的时候随机出现;有延迟。