def play(self): # Starts the game eloop = EventLoop(self.screen, self.settings, self.play_button, self.score_button, self.maze, self.stats, self.sb, self.pacman, self.pac, self.ghosts, self.points, self.pills, self.fruits, self.portal, finished=False) # loops while not finished while not eloop.finished: # Check events eloop.check_events() if self.stats.game_active: # spawns fruits at random times if self.delay == self.timer: self.maze.create_fruit(self.stats.fruit_count) if self.stats.fruit_count >= 3: self.stats.fruit_count = 0 else: self.stats.fruit_count += 1 self.delay = 0 self.timer = random.randint(3000, 5001) else: self.delay += 1 # deletes fruit after a period of time if self.count == self.timer2: self.fruits.empty() self.count = 0 else: self.count += 1 # updates sprites self.pac.update() self.ghosts.update() self.portal.update() # Checks for collision eloop.check_collisions() self.update_screen()
def play(self): loop = EventLoop(self.p_man, self.maze, self.ghosts, self.stats, self.pb) while not loop.finished: loop.check_events() if self.stats.game_active: self.pinky.start(loop.start_time) self.inky.start(loop.start_time) self.blinky.start(loop.start_time) self.clyde.start(loop.start_time) loop.check_collisions() self.update_screen() self.clock.tick(60) self.lost = self.p_man.finished self.won = loop.won if self.won: self.stats.game_active = False elif self.lost: self.stats.game_active = False