diff --git a/src/py2048/game.py b/src/py2048/game.py index 892ee0c..9ddc420 100644 --- a/src/py2048/game.py +++ b/src/py2048/game.py @@ -1,9 +1,9 @@ +import random import sys import pygame from .block import Block - from .colors import COLORS from .config import Config @@ -14,8 +14,7 @@ class Game: self.screen = pygame.display.set_mode((Config.WIDTH, Config.HEIGHT)) pygame.display.set_caption("2048") self.sprites = pygame.sprite.Group() - block = Block(0, 0) - self.sprites.add(block) + self.generate_random_block() def run(self) -> None: while True: @@ -36,3 +35,16 @@ class Game: if event.type == pygame.QUIT: pygame.quit() sys.exit() + + def generate_random_block(self) -> None: + for _ in range(Config.INITIAL_BLOCK_COUNT): + while True: + x = random.randint(0, 2) * Config.BLOCK_SIZE # random column position + y = random.randint(0, 2) * Config.BLOCK_SIZE # random row position + + block = Block(x, y) + colligin_blocks = pygame.sprite.spritecollide(block, self.sprites, False) + + if not colligin_blocks: + self.sprites.add(block) + break