软件工程U201314924(5)

2019-09-01 16:59

drawmenu(); doMenu();*/

SetWindowPos(HWND_BOTTOM,HWND_NOTOPMOST,133,100,800,600,SWP_SHOWWINDOW); DrawChessMap(); 程 }

//CreateThread(NULL,0,ThreadProc2,NULL,0,NULL); //创建线程 playgame(); getch();

prt(\getch(); return 0;

th1=CreateThread(NULL,0,ThreadProc1,NULL,0,NULL); //创建线//开始游戏

//宏定义

#define CHESS_X 28 #define CHESS_Y 8

#define CHESS_WIDTH 12*2 #define CHESS_HIGHT 18

char ChessBoard[12][18]={0}; //12*18的二维数组表示棋盘数据 有黑格子的地方置1 其它地方置0 unsigned int rx,ry;

extern void gotoxy(int,int); int PointNum=0; int speed=1000;

HANDLE th1;//线程1句柄 void ShowChessBoard() ; typedef struct _chess_data

21

{

char rx;//5种类型 0..4 char ry;////4种形态 0..3

char data[4][4]; //数据 COORD xy;//位置 POINT

}chess_data;

chess_data oneChess;

CRITICAL_SECTION cs;

CRITICAL_SECTION cs_puts; void prt(char* s) { //进入临界区 } //画棋盘

void DrawChessMap(void) {

int i;

//U型 //左边

EnterCriticalSection(&cs_puts); puts(s);

LeaveCriticalSection(&cs_puts); //离开临界区

for (i=0;i

gotoxy(CHESS_X,CHESS_Y+i);

prt(\┃\

} //右边

for (i=0;i

gotoxy(CHESS_X+CHESS_WIDTH,CHESS_Y+i);

22

prt(\┃\

} //底部转角 prt(\┗\

gotoxy(CHESS_X+CHESS_WIDTH,CHESS_Y+CHESS_HIGHT); prt(\┛\//底部横线

for (i=1;i

gotoxy(CHESS_X+i*2,CHESS_Y+CHESS_HIGHT);

prt(\━\

gotoxy(CHESS_X,CHESS_Y+CHESS_HIGHT);

}

return ; }

//20种不成形态的棋子

chess_data DownChessData[5][4]={0}; void InitChessData(void) {

//□□

//□□ 类型0 状态0

DownChessData[0][0].xy.X=CHESS_X+4; DownChessData[0][0].xy.Y=CHESS_Y+0; DownChessData[0][0].data[0][0]=1; DownChessData[0][0].data[1][0]=1; DownChessData[0][0].data[0][1]=1; DownChessData[0][0].data[1][1]=1; //状态1-3 =状态0

DownChessData[0][1]=DownChessData[0][2]=DownChessData[0][3

23

]=DownChessData[0][0];

//□□□

// □ 类型1 状态0

DownChessData[1][0].xy.X=CHESS_X+4; DownChessData[1][0].xy.Y=CHESS_Y+0; DownChessData[1][0].data[0][0]=1; DownChessData[1][0].data[1][0]=1; DownChessData[1][0].data[2][0]=1; DownChessData[1][0].data[1][1]=1; // □ //□□

// □ 类型1 状态1

DownChessData[1][1].xy.X=CHESS_X+4; DownChessData[1][1].xy.Y=CHESS_Y+0; DownChessData[1][1].data[1][0]=1; DownChessData[1][1].data[1][1]=1; DownChessData[1][1].data[1][2]=1; DownChessData[1][1].data[0][1]=1; // □ 类型1 状态2 //□□□

DownChessData[1][2].xy.X=CHESS_X+4; DownChessData[1][2].xy.Y=CHESS_Y+0; DownChessData[1][2].data[1][0]=1; DownChessData[1][2].data[0][1]=1; DownChessData[1][2].data[1][1]=1; DownChessData[1][2].data[2][1]=1; //□ 类型1 状态3 //□□ //□

DownChessData[1][3].xy.X=CHESS_X+4; DownChessData[1][3].xy.Y=CHESS_Y+0; DownChessData[1][3].data[0][0]=1;

24

DownChessData[1][3].data[0][1]=1; DownChessData[1][3].data[0][2]=1; DownChessData[1][3].data[1][1]=1; //□ //□ //□ //□

DownChessData[2][0].xy.X=CHESS_X+4; DownChessData[2][0].xy.Y=CHESS_Y+0; DownChessData[2][0].data[1][0]=1; DownChessData[2][0].data[1][1]=1; DownChessData[2][0].data[1][2]=1; DownChessData[2][0].data[1][3]=1;

DownChessData[2][2]= DownChessData[2][0];

//□□□□

DownChessData[2][3].xy.X=CHESS_X+4; DownChessData[2][3].xy.Y=CHESS_Y+0; DownChessData[2][3].data[1][2]=1; DownChessData[2][3].data[2][2]=1; DownChessData[2][3].data[3][2]=1; DownChessData[2][3].data[0][2]=1;

DownChessData[2][1]= DownChessData[2][3]; //□□ // □□

DownChessData[3][0].xy.X=CHESS_X+4; DownChessData[3][0].xy.Y=CHESS_Y+0; DownChessData[3][0].data[0][1]=1;

25


软件工程U201314924(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2017大连中考英语题及答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: