}
}
}
GameStatus[x3][y3]=MAP_STATE_EMPTY; GameStatus[x4][y4]=MAP_STATE_EMPTY;
//添加新的移动后数据状态
ActiveStatus[0][1] += 1; ActiveStatus[1][1] += 1; ActiveStatus[2][1] += 1; ActiveStatus[3][1] += 1;
GameStatus[x1][y1+1]=MAP_STATE_NOT_EMPTY; GameStatus[x2][y2+1]=MAP_STATE_NOT_EMPTY; GameStatus[x3][y3+1]=MAP_STATE_NOT_EMPTY; GameStatus[x4][y4+1]=MAP_STATE_NOT_EMPTY; InvalidateCurrent();
break; RectDown(); break;
case DOWN:
// 内部函数:方块的变形
void CSkyblue_RectView::RectChange() {
//先预先变形,然后判断变形后的方块是否有空间,如有足够空间,则进行实际变形,否则不变 int xx1,xx2,xx3,xx4,yy1,yy2,yy3,yy4; int m_lscurrentRect; CString lsStr;
int x1,x2,x3,x4,y1,y2,y3,y4; x1 = ActiveStatus[0][0]; x2 = ActiveStatus[1][0]; x3 = ActiveStatus[2][0]; x4 = ActiveStatus[3][0]; y1 = ActiveStatus[0][1]; y2 = ActiveStatus[1][1]; y3 = ActiveStatus[2][1]; y4 = ActiveStatus[3][1];
//变形后位置在数组中的存放顺序仍需遵循先左后右,在同一列中先上后下 xx1=x1; xx2=x2; xx3=x3; xx4=x4; yy1=y1; yy2=y2; yy3=y3; yy4=y4; switch(m_currentRect) { case 1:
xx1=x1+1; yy1=y1-1; xx3=x3-1; yy3=y3+1; xx4=x4-2; yy4=y4+2; m_lscurrentRect = 11; break;
xx1=x1-1; yy1=y1+1; xx3=x3+1; yy3=y3-1; xx4=x4+2; yy4=y4-2;
case 11:
百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典教育范文用VC++mfc实现俄罗斯方块的程序详解(15)在线全文阅读。
相关推荐: