diff options
| author | omagdy7 <omar.professional8777@gmail.com> | 2023-05-08 21:40:21 +0300 |
|---|---|---|
| committer | omagdy7 <omar.professional8777@gmail.com> | 2023-05-08 21:40:21 +0300 |
| commit | 241e41892a10d3913c63935a8f9e14306e8a73cd (patch) | |
| tree | e8a95b5e20d20aad3d677ce02a089fbc0339a4b8 /src/game_state.py | |
| parent | d610718c10e310c75126593624ecaaaa2233b371 (diff) | |
| download | Macpan-241e41892a10d3913c63935a8f9e14306e8a73cd.tar.xz Macpan-241e41892a10d3913c63935a8f9e14306e8a73cd.zip | |
Made a Singeltion class GameState containg the current state of the game
Diffstat (limited to 'src/game_state.py')
| -rw-r--r-- | src/game_state.py | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/game_state.py b/src/game_state.py new file mode 100644 index 0000000..f722873 --- /dev/null +++ b/src/game_state.py @@ -0,0 +1,46 @@ +from blinky import Blinky +from clyde import Clyde +from inky import Inky +from pinky import Pinky +from player import Player +from settings import settings +import map as Map +import pygame + +WIDTH = settings.width +HEIGHT = settings.height +maze = Map.Map() +TILE_WIDTH = WIDTH // len(maze.maze[0]) +TILE_HEIGHT = HEIGHT // len(maze.maze) + + +class GameState(): + def __init__(self, sprites): + self.pacman = Player(sprites[0]) + self.blinky = Blinky(sprites[1], 12 * TILE_WIDTH + + 15, 12 * TILE_HEIGHT + 15) + self.pinky = Pinky(sprites[2], 11 * TILE_WIDTH + + 15, 12 * TILE_HEIGHT + 15) + self.inky = Inky(sprites[3], 13 * TILE_WIDTH + + 15, 12 * TILE_HEIGHT + 15) + self.clyde = Clyde(sprites[4], 14 * TILE_WIDTH + + 15, 12 * TILE_HEIGHT + 15) + self.map = Map.Map() + self.game_over = False + self.is_pacman_alive = True + + def reset(self, sprites): + self.pacman = Player(sprites[0]) + self.blinky = Blinky(sprites[1], 12 * TILE_WIDTH + + 15, 12 * TILE_HEIGHT + 15) + self.pinky = Pinky(sprites[2], 11 * TILE_WIDTH + + 15, 12 * TILE_HEIGHT + 15) + self.inky = Inky(sprites[3], 13 * TILE_WIDTH + + 15, 12 * TILE_HEIGHT + 15) + self.clyde = Clyde(sprites[4], 14 * TILE_WIDTH + + 15, 12 * TILE_HEIGHT + 15) + self.map = Map.Map() + self.game_over = False + self.is_pacman_alive = True + timer_event = pygame.USEREVENT + 1 + pygame.time.set_timer(timer_event, 1000 * 10, 1) |
