diff options
| author | fschildt <florian.schildt@protonmail.com> | 2025-09-28 13:19:22 +0200 | 
|---|---|---|
| committer | fschildt <florian.schildt@protonmail.com> | 2025-09-28 13:19:22 +0200 | 
| commit | b62865965ee798d8fd82c685faa105b04c129218 (patch) | |
| tree | cff92d89990aa00a7c0d36742be9c228eb4a21d5 /src/games/tetris | |
| parent | 4537e9bee3d054786857fa92824e2d9e8385bb36 (diff) | |
tetris: fix game over condition
Diffstat (limited to 'src/games/tetris')
| -rw-r--r-- | src/games/tetris/Board.cpp | 6 | ||||
| -rw-r--r-- | src/games/tetris/Tetris.cpp | 5 | 
2 files changed, 3 insertions, 8 deletions
diff --git a/src/games/tetris/Board.cpp b/src/games/tetris/Board.cpp index 87a0e22..ab70cd5 100644 --- a/src/games/tetris/Board.cpp +++ b/src/games/tetris/Board.cpp @@ -24,12 +24,6 @@ int32_t Board::PlaceTetromino(Tetromino &tetromino) {      tetromino.GetBitmap(tetromino_bitmap); -    // check if Tetromino cannot be placed (Game Over) -    if (tetromino.IsCollisionWithBoard()) { -        return -1; -    } - -      // place in Board's Bitmap      m_Bitmap[pos.y+0] |= tetromino_bitmap[0];      m_Bitmap[pos.y+1] |= tetromino_bitmap[1]; diff --git a/src/games/tetris/Tetris.cpp b/src/games/tetris/Tetris.cpp index 8f07df0..331e8a6 100644 --- a/src/games/tetris/Tetris.cpp +++ b/src/games/tetris/Tetris.cpp @@ -122,10 +122,11 @@ void Tetris::UpdatePauseState(SDL_Event &event) {  void Tetris::HandleTetrominoPlacement() {      int32_t rows_cleared = m_Board.PlaceTetromino(m_ActiveTetromino); +      m_ActiveTetromino = m_NextTetromino; -    m_NextTetromino = Tetromino(m_Board); +    m_NextTetromino = Tetromino{m_Board}; -    if (rows_cleared == -1) { +    if (m_ActiveTetromino.IsCollisionWithBoard()) {          HandleGameOver();          return;      }  | 
