From c9ef031e1aabc67244f83060b9fbc1bdea005c14 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Wed, 3 Jan 2024 18:22:15 +0200 Subject: [PATCH] feat(game): add `move_down` --- src/game/game.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/game/game.py b/src/game/game.py index 094f3c6..6ba22bd 100644 --- a/src/game/game.py +++ b/src/game/game.py @@ -82,7 +82,13 @@ class Game2048: return moved, self.score def move_down(self) -> tuple[bool, int]: - pass + board = np.rot90(self.board, 1) + board, moved = self._move_and_merge(board) + self.board = np.rot90(board, -1) + + if moved: + self.add_random_tile() + return moved, self.score def _move_and_merge(self, board: np.ndarray) -> tuple[np.ndarray, bool]: board, has_pushed = self._push_board_right(board) @@ -106,7 +112,7 @@ class Game2048: print(f"Score: {self.score}") for row in self.board: for val in row: - print(f"{val:^3}", end="") + print(f"{val:^3}" if val != 0 else " ", end="") print() def _push_board_right(self, board: np.ndarray) -> tuple[np.ndarray, bool]: