diff --git a/src/py2048/block.py b/src/py2048/block.py index 824fd4b..ea138c4 100644 --- a/src/py2048/block.py +++ b/src/py2048/block.py @@ -3,7 +3,6 @@ import random from typing import Union import pygame -from loguru import logger from .colors import COLORS from .config import Config @@ -75,7 +74,6 @@ class Block(pygame.sprite.Sprite): self.group.remove(self) self.value += other.value self.update() - logger.debug(f"Merging block({id(self)}) with block({id(other)})") self.group.add(self) def update(self) -> None: diff --git a/src/py2048/board.py b/src/py2048/board.py index bfe0602..325ec10 100644 --- a/src/py2048/board.py +++ b/src/py2048/board.py @@ -1,6 +1,7 @@ import random import pygame +from loguru import logger from .block import Block from .config import Config @@ -12,8 +13,15 @@ class Board(pygame.sprite.Group): blocks = self.sprites() block: Block - if direction in {Direction.DOWN, Direction.RIGHT}: - blocks.sort(key=lambda block: (block.rect.x, block.rect.y), reverse=True) + match direction: + case Direction.UP: + blocks.sort(key=lambda block: block.rect.y) + case Direction.DOWN: + blocks.sort(key=lambda block: block.rect.y, reverse=True) + case Direction.LEFT: + blocks.sort(key=lambda block: block.rect.x) + case Direction.RIGHT: + blocks.sort(key=lambda block: block.rect.x, reverse=True) for block in blocks: block.move(direction) @@ -39,4 +47,5 @@ class Board(pygame.sprite.Group): if not colliding_blocks: self.add(block) + logger.debug(f"Created block at {block.pos()}") break