软件工程U201314924(8)

2019-09-01 16:59

gotoxy(CHESS_X+x*2,CHESS_Y+y-1); prt(\ \

ChessBoard[x][y]=ChessBoard[x][y-1]; } }

for (x=1;x<12;x++) {

for (y=0;y<18;y++)

gotoxy(CHESS_X+x*2,CHESS_Y+y); if (ChessBoard[x][y]) {

prt(\■\

} }

}else prt(\ \

//添加棋子数据到棋盘

void Add1Chess(chess_data Chess) {

int x,y; int rowY;

int rowNum=0; for (x=0;x<4;x++) for (y=0;y<4;y++) {

if (Chess.data[x][y]) {

//ChessBoard

ChessBoard[(Chess.xy.X-CHESS_X)/2+x][Chess.xy.Y-CHESS_Y+y]=1;

} }

36

//更新数据后检测 for (y=0;y<4;y++) {

if ((rowY=CheckRowAllOne())>=0) { } }

//

switch (rowNum)

{

case 1:

PointNum+=10;

gotoxy(CHESS_X+CHESS_WIDTH+3,CHESS_Y+5);

printf(\当前得分=?\

break; case 2:

PointNum+=30;

gotoxy(CHESS_X+CHESS_WIDTH+3,CHESS_Y+5);

printf(\当前得分=?\

case 3:

PointNum+=60;

gotoxy(CHESS_X+CHESS_WIDTH+3,CHESS_Y+5);

printf(\当前得分=?\case 4:

PointNum+=100;

37

//消掉这一行 ClearRow(rowY); rowNum++;

//记算这一局得分情况

gotoxy(CHESS_X+CHESS_WIDTH+3,CHESS_Y+5); printf(\当前得分=?\

}

break; }

//以■方块显示棋盘数据

void ShowChessBoard() //显示ChessBoard里的1 {

int x,y;

for (x=0;x<12;x++) for (y=0;y<18;y++) {

if (ChessBoard[x][y]) {

gotoxy(CHESS_X+x*2,CHESS_Y+y);

prt(\■\

} } }

void showallchess(void) {

int x,y;

for (x=0;x<5;x++) {

for (y=0;y<4;y++) //0..3 {

ShowChess (DownChessData[x][y]); gotoxy(0,0);

printf(\ getch(); getch();

ClearChess(DownChessData[x][y]);

38

} } }

void pauseGame() {

static int pause=0; if (pause) {

gotoxy(CHESS_X+CHESS_WIDTH+3,CHESS_Y+5+2);

printf(\按Q键--暂停\

ResumeThread(th1); pause=0; } else {

gotoxy(CHESS_X+CHESS_WIDTH+3,CHESS_Y+5+2);

printf(\按Q键--继续\

SuspendThread(th1); //线程挂起后,线程代码就暂停执行

pause=1; } }

//开始游戏

void playgame(void) {

int ch=0; //

srand( (unsigned)time( NULL ) );

//初始化数据

EnterCriticalSection(&cs);

gotoxy(CHESS_X+CHESS_WIDTH+3,CHESS_Y+5); printf(\当前得分=?\

39

gotoxy(CHESS_X+CHESS_WIDTH+3,CHESS_Y+5+2); printf(\按Q键--暂停\

gotoxy(CHESS_X+CHESS_WIDTH+3,CHESS_Y+5+2+2); gotoxy(CHESS_X+CHESS_WIDTH+3,CHESS_Y+5+2+2+2); printf(\难度调节+,-号\

printf(\难度:m\InitChessData(); //showallchess();

//随机初始化

rx=rand()%5; ry=0;

oneChess=DownChessData[rx][ry]; oneChess.rx=rx; oneChess.ry=ry;

ShowChess(oneChess); LeaveCriticalSection(&cs); //

while(1) {

ch=getch();

EnterCriticalSection(&cs); gotoxy(0,0); printf(\ // 如果是下光标控制↓ //如果是左光标控制←

//如果是右光标控制→ switch(ch)

{

40

则下移 //80 则左移 //75 则右移 //77


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

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

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

马上注册会员

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