新手用C++ 整tetris 有問題解決唔到 麻煩各位高手幫幫手...
void Game::clearLine(){
for(int i=height+1;i>1;i--){
int moveDownBy=0;
if(lineClear(i)){
for(int counter=0;counter<4;counter++){
if(lineClear(i-counter)){
moveDownBy++;
numOfRowClear++;
}
}
for(int k=i;k>0;k--){
for(int j=1;j<width+1;j++){
if((k-moveDownBy)<1)
break;
gameField[k][j]=gameField[k-moveDownBy][j];
gameField[k-moveDownBy][j]=' ';
}
}
}
}
}
我將2-4層連續消ga時候就無問題
但係一到 中間有夾層就會食左 中間本來唔應該消個行 同埋會有一行無消...
例如: [十個@ 一行] 理應消完變:
@@ @@
@@@@@@@@
@@@@@@@@
@@@@@@@@ | @@ @@
@@@@@@@@@@ | @@@@@@@@
@@@@@@@@@@ | @@@@@@@@
@@ @@@@ | @@@@@@@@
@@@@@@@@@@ | @@ @@@@
但係就變左做
@@ @@
@@@@@@@@
@@@@@@@@
@@@@@@@@
@@@@@@@@@@
求各位指點一下應該點諗... / 點改D code |
|
|