上两节实现了棋子的两种走法,吃子和没移动到线交叉点。不过我们都是没有规则的走,这节为棋子的走法增加规则,棋的规则我就不多说了,基本要找个不会下象棋的很难,就是找到的估计也不会看这文章。
当我们移动棋子的时候,总是要判断一下移动是不是合规则的,合规则的才让下,不合规则的就不能下了,什么马象田马日车炮跑,将军卫士陷九宫,[本人涅造句子]之类的。
好了,原始冲动,新建棋子规则类,也是本棋子裤的最后一个类了:
对着项目内裤右键-》添加类->输入:ChessRule.cs。
/// <summary>
/// 棋子规则-by 路过秋天
/// </summary>
public class ChessRule
{
}
/// 棋子规则-by 路过秋天
/// </summary>
public class ChessRule
{
}
我们为之新增加一个方法IsCanMove方法,就是棋子要走的时候,用此方法来判断是不是符合规则,返回值就是bool型了。
/// <summary>
/// 棋子规则-by 路过秋天
/// </summary>
public class ChessRule
{
/// <summary>
/// 移动规则
/// </summary>
/// <param name="move">棋子</param>
/// <param name="eat">移动的位置的数组</param>
/// <returns></returns>
public bool IsCanMove(Chessman chessman, Point moveTo)
{
//实现判断
return false;
}
}
/// 棋子规则-by 路过秋天
/// </summary>
public class ChessRule
{
/// <summary>
/// 移动规则
/// </summary>
/// <param name="move">棋子</param>
/// <param name="eat">移动的位置的数组</param>
/// <returns></returns>
public bool IsCanMove(Chessman chessman, Point moveTo)
{
//实现判断
return false;
}
}