define.h

来自「用c++ 开发的中国象棋」· C头文件 代码 · 共 60 行

H
60
字号

//棋子的坐标定义
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 + =
减小字号Ctrl + -
显示快捷键?