⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 define.h

📁 用c++ 开发的中国象棋
💻 H
字号:

//棋子的坐标定义
struct ChessPos
{
	BYTE x;
	BYTE y;
};


struct ChessMove
//移动棋子的结构体
{
	int ChessID;
	ChessPos pFrom;
	ChessPos pTo;
};

//悔棋时需要的数据结构
 struct UnDoMove
{
	ChessMove cmChessMove;
	short nChessID;//被吃掉的棋子
};
//定义各个棋子
typedef enum 
{
	NoChessMan=0,//没有棋子
//  帅			车			马			炮			仕			象			兵
	BlackKing,BlackRook,BlackHouse,BlackGunner,BlackAssist,BlackBishop,BlackSoldier,

//	将		车		  马		炮	    	士		象		卒
	RedKing,RedRook,RedHouse,RedGunner,RedAssist,RedBishop,RedSoldier,	
}ChessMan;

//判断是黑子
#define IsBlack(x)  (x>=BlackKing&&x<=BlackSoldier)
//判断是否是红子
#define IsRed(x)  (x>=RedKing&&x<=RedSoldier)
//判断是不是同一方的棋子
#define IsSameSide(x,y)  ((IsBlack(x)&&IsBlack(y))||(IsRed(x)&&IsRed(y)))

typedef enum{BLACKCHESS,REDCHESS};


struct MovingChess
{
	BYTE nChessID;
	POINT ptMovePoint;
};
struct SendMsg
{
	MovingChess move;
	char* strMsg;
};

#define BoarderWidth 18 //棋盘左右边缘的宽度
#define BoarderHeight 15 //棋盘上下边缘的高度
#define GridHeight 44  //棋盘上每个格子的高度
#define GridWidth 43//棋盘上每个格子的宽度

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -