本人学棋四年,至今闲暇之余仍会在网上和网友下棋。某天突发奇想,编一个chess游戏,于是在网上找到一些大牛们之前做好的chess游戏,打算用代码的角度来下一盘棋。
成果见下图:
试了一下手,移动棋子 *** 作不是很顺畅,但是基本满足了国际象棋的要求,包括王车易位,吃过路兵,还支持人人交互,人机交互,棋盘颜色自定义,棋子风格选择,记录移动位置等。
代码难点也是下棋的难点,每一种棋子都有约束:路径约束,棋子与棋子相克约束,黑白棋约束。例如小兵只能一次单走一个或者两个格子,还不能走到有棋子的格子。更为复杂的吃过路兵,还要考虑对方的走法。王车易位需要考虑王和车的绝对位置,以及是否是第一次移动等。每一个游戏规则都需要充分考虑,抛出异常也需要符合逻辑。
总之,对于我来说这是一个难度较高的工程。从明天开始,我会学习视频来完成这个复杂的chess游戏。
原视频链接
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)