江苏大学《设计一个五子棋》课程设计任务书
白棋的四种情况:
○○○○○○●●●●○●●●●●●●●○ ●●●●●○●●●●●○●●●●●●○● ●●●●●○●●●●●●○●●●●○●● ●●●●●○●●●●●●●○●●○●●● ●●●●●○●●●●●●●●○○●●●●
3.2.添加各模块功能代码
3.2.1构造函数的实现程序
CCk1401View::CCk1401View() { RightORLeft=0; count=0; Blackchess=1; xx=0; yy=0;
for(int iii=0;iii<15;iii++)
for(int ii=0;ii<15;ii++)
for(inti=0;i<15;i++)
for(int j=0;j<15;j++) wb[i][j]=0;
//零表示空、1表示黑棋、2表示白棋
for(intjj=0;jj<15;jj++) j1[ii][jj]=0;
for(intjjj=0;jjj<15;jjj++) a[iii][jjj]=0;
Board.LoadBitmap(Chessboard); //装入背景位图 Black.LoadBitmap(Chessblank); White.LoadBitmap(Chesswhite);
//装入黑棋位图 //装入白棋位图
GameOver=0;
3.2.2判定胜利的实现程序
13
江苏大学《设计一个五子棋》课程设计任务书
boolCKView::isWin(CPointcp) {
intcp_x =(cp.x-5)/35 ; intcp_y =(cp.y-7)/35 ; inti = cp_x ; int j = cp_y ; int count = 1 ;
intnowChessColor =wb[cp_x][cp_y] ; while(1) {
if(i> 0 &&i< 15) { } else { }
14
i-- ;
if(nowChessColor == wb[i][j] ) { } else { }
break ; count++ ; if( count == 5 ) { }
return true ;
break;
江苏大学《设计一个五子棋》课程设计任务书
}
i = cp_x ;
while(1) { }
i = cp_x ; count = 1 ;
if(i> 0 &&i< 15) { } else { }
break; i++ ;
if(nowChessColor == wb[i][j] ) { } else { }
break ; count++ ; if( count == 5 ) { }
return true ;
while(1)
15
江苏大学《设计一个五子棋》课程设计任务书
{ }
j = cp_y ;
if(j > 0 && j < 15) { } else { }
break; j-- ;
if(nowChessColor ==wb[i][j] ) { } else { }
break ; count++ ; if( count == 5 ) { }
return true ;
while(1) {
if(j > 0 && j < 15) {
j++ ;
if(nowChessColor == wb[i][j] )
16