象棋游戏编程——各棋子的走法

BingWay原创作品,转载请注明作者和出处。
继上次写 象棋游戏编程——画棋盘》 ,经过十一长假的几天休息和调整,这几天终于把各棋子的走法功能完成。
象棋的走法是玩象棋必须知道的,下面的走法是我玩象棋两三天过后总结的。
将或帅 
移动范围:它只能在王宫内移动。 
移动规则:它每一步只可以水平或垂直移动一点。

移动范围:它只能在王宫内移动。
移动规则:它每一步只可以沿对角线方向移动一点。

移动范围:河界的一侧。
移动规则:它每一步只可以沿对角线方向移动两点(象走田),另外,在移动的过程中不能够穿越障碍,如果有,就是俗称的“塞象”。

移动范围:任何位置
移动规则:每一步只可以水平或垂直移动一点(马走日),再按对角线方面向左或者右移动。另外,在移动的过程中不能够穿越障碍,如果有,就是俗称的“撇马脚”。

移动范围:任何位置
移动规则:可以水平或垂直方向移动任意个无阻碍的点。

移动范围:任何位置
移动规则:移动起来和车很相似,但它必须跳过一个棋子来吃掉对方的一个棋子(隔山炮)。

移动范围:任何位置
移动规则:每步只能向前移动一点。小兵过河后,就有了左右移动的能力,兵只能前进,不能后退。

实现各棋子走法的代码:
各子的走法

你可能感兴趣的:(编程)