From 752c29e6485395676ef8db9940e76f1795af353b Mon Sep 17 00:00:00 2001 From: nick black Date: Thu, 26 Mar 2020 15:33:14 -0400 Subject: [PATCH] Tetris: fix line clearing of final column #421 --- src/tetris/lock.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/tetris/lock.h b/src/tetris/lock.h index f845771f2..24c35dd89 100644 --- a/src/tetris/lock.h +++ b/src/tetris/lock.h @@ -1,8 +1,5 @@ void LockPiece(){ curpiece_->mergedown(*board_); - if(!board_->cursor_move(0, 1)){ - throw TetrisNotcursesErr("cursor_move()"); - } int bdimy, bdimx; board_->get_dim(&bdimy, &bdimx); int cleared; // how many contiguous lines were cleared @@ -12,6 +9,9 @@ void LockPiece(){ channels_set_fg(&tr, 0x00ff00); channels_set_bg_alpha(&tr, CELL_ALPHA_TRANSPARENT); channels_set_fg(&bl, 0x0000ff); channels_set_bg_alpha(&bl, CELL_ALPHA_TRANSPARENT); channels_set_fg(&br, 0x00ffff); channels_set_bg_alpha(&br, CELL_ALPHA_TRANSPARENT); + if(!board_->cursor_move(0, 1)){ + throw TetrisNotcursesErr("cursor_move()"); + } if(!board_->stain(bdimy - 2, bdimx - 2, tl, tr, bl, br)){ throw TetrisNotcursesErr("stain()"); } @@ -26,7 +26,7 @@ void LockPiece(){ } if(cleared){ // topmost verified clear is y + 1, bottommost is y + cleared for(int dy = y ; dy >= 0 ; --dy){ - for(int x = 1 ; x < bdimx - 2 ; ++x){ + for(int x = 1 ; x < bdimx - 1 ; ++x){ ncpp::Cell c; if(board_->get_at(dy, x, &c) < 0){ throw TetrisNotcursesErr("get_at()");