中国像棋/redjiang.cs

(开头部分) 2KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Drawing;

namespace 中国像棋
{
    class redjiang : ChessBase
    {
        public redjiang(int x, int y, string Imgpath, ChessType type, CheckWin edg)
            : base(x, y, Imgpath, type, edg)
        {

        }
        public override bool Eatablemove(Point startpoint, Point endpoint)
        {
            if (endpoint.X < 4 || endpoint.X > 6) return false;
            if (endpoint.Y < 8) return false;
            if (Math.Abs(endpoint.Y - startpoint.Y) >= 2 || Math.Abs(endpoint.X - startpoint.X) >= 2)
                return false;
            if (startpoint.X!=endpoint.X&&endpoint.Y!=startpoint.Y)
                return false;//规定将的走法不能走斜线;
            //if (endpoint.Y > 3 || endpoint.Y < 8)
            //    return false;
            //if (endpoint.X < 4 || endpoint.X > 6)
            //    return false;
            if (startpoint.X == endpoint.X)//两个棋子在同一竖线上
            {
                int chessnum = 0;
                int minY = startpoint.Y > endpoint.Y ? endpoint.Y: startpoint.Y ;
                int maxY = startpoint.Y > endpoint.Y ? startpoint.Y : endpoint.Y;
                for (int j = minY + 1; j < maxY; j++)
                {
                    foreach (ChessBase chess in ChessBoard.AllChess)
                    {
                        if (chess.X == startpoint.X&&chess.Y == j)
                            chessnum++;
                    }
                }
                if (chessnum != 0) return false;
            }
            if (startpoint.Y == endpoint.Y)
            {
                int chessnum = 0;
                int minX = startpoint.X > endpoint.X ? endpoint.X:startpoint.X;
                int maxX = startpoint.X > endpoint.X ? startpoint.X : endpoint.X;
                for (int j = minX + 1; j < maxX; j++)
                {
                    foreach (ChessBase chess in ChessBoard.AllChess)
                    {
                        if (chess.X==j&&chess.Y==endpoint.Y)
                            chessnum++;
                    }
                }
                if (chessnum != 0) return false;
            }
            return true;
        }
后面还有 6 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。