def run_game(): # Initialize pygame, settings, and screen object. pygame.mixer.pre_init(44100, -16, 2, 2048) pygame.mixer.init() pygame.init() game_settings = GameSettings() screen = pygame.display.set_mode((game_settings.screen_width, game_settings.screen_height)) pygame.display.set_caption("Pac Man Portal") # Open sprite sheet sprite_sheet = SpriteSheet(file_name='images/spritesheet.png') # Make the Play and Scores button. play_button = Button(screen=screen, msg="Play", order=0) score_button = Button(screen=screen, msg="High Scores", order=1) # Open high score file try: high_score_file = open("high_score_file.txt", "r+") except FileNotFoundError: high_score_file = open("high_score_file.txt", "w+") # Open maze layout file maze_file = open('mazelayout.txt', 'r') # Make sound manager sounds = Sounds() # Initialize game stats and scoreboard stats = GameStats(game_settings=game_settings) sb = Scoreboard(screen=screen, game_settings=game_settings, stats=stats, sprite_sheet=sprite_sheet, high_score_file=high_score_file, sounds=sounds) # Initialize pacman pacman = Pacman(screen=screen, game_settings=game_settings, stats=stats, sb=sb, image_list=sprite_sheet.pacman_image, death_anim_list=sprite_sheet.pacman_death_image, sounds=sounds) # Initialize maze maze = Maze(screen=screen, game_settings=game_settings, maze_file=maze_file, sprite_sheet=sprite_sheet, pacman=pacman, sounds=sounds) # Initialize the event handler event_handler = EventHandler(pacman=pacman, play_button=play_button, score_button=score_button, stats=stats, sb=sb, maze=maze, sounds=sounds) # Initialize the display manager display = Display(screen=screen, game_settings=game_settings, stats=stats, sb=sb, sprite_sheet=sprite_sheet, play_button=play_button, score_button=score_button, maze=maze, pacman=pacman, event_handler=event_handler, sounds=sounds) # Start the main loop for the game while True: event_handler.check_events() if stats.game_active: pacman.update(maze=maze, display=display) maze.update_ghosts() maze.update_bullets() maze.update_portals() display.update_screen()
def run_game(): """main game function""" # Initialize game and create a screen object. pygame.init() screen = pygame.display.set_mode((1200, 800)) pygame.display.set_caption("Sidescroller") screen_rect = screen.get_rect() #Initialize settings settings = Settings() # Screen handles H = screen_rect.height W = screen_rect.width HH = H / 2 HW = W / 2 # Initialize entity manager ent_manager = EntityManager(screen) # Initialize stars sky = Sky(screen, ent_manager, 10) sky.makeStars(speed=0) # Load main character COLS, ROWS, CELL, HANDLE = 2, 4, 5, 4 player1 = PlayerEntity(screen, 60, HH, "sprites/rocket_ship4x2.png", COLS, ROWS, CELL, HANDLE, -90) ent_manager.add_entity(player1) # Initialize event handler event_handler = EventHandler(player1, ent_manager, screen) # Start the main loop for the game. while True: """main game-loop""" # Watch for keyboard and mouse events. event_handler.check_events() # Redraw background screen.fill(settings.bg_color) ent_manager.update_entities() ent_manager.draw_entities() # Make the most recently drawn screen visible. pygame.display.flip()
def run_game(): """main game function""" # Initialize game and create a screen object. pygame.init() screen = pygame.display.set_mode((1200, 800)) pygame.display.set_caption("Sidescroller") screen_rect = screen.get_rect() #Initialize settings settings = Settings() # Screen handles H = screen_rect.height W = screen_rect.width HH = H / 2 HW = W / 2 # Initialize entity manager ent_manager = EntityManager(screen) # Initialize event handler event_handler = EventHandler(ent_manager, screen) # create raindrops and add them to entity manager to be drawn drops = grid_of_drops(screen, 2) for drop in drops: ent_manager.add_entity(drop) # Start the main loop for the game. while True: """main game-loop""" # Watch for keyboard and mouse events. event_handler.check_events() # Redraw background screen.fill(settings.bg_color) ent_manager.update_entities() ent_manager.draw_entities() # Make the most recently drawn screen visible. pygame.display.flip()
def run_game(): # Initialize pygame, settings, and screen object. pygame.mixer.pre_init(44100, -16, 2, 2048) pygame.mixer.init() pygame.init() clock = pygame.time.Clock() clock.tick(60) ai_settings = Settings() screen = pygame.display.set_mode( (ai_settings.screen_width, ai_settings.screen_height)) pygame.display.set_caption("Alien Invader") # Import sprite sheet sprite_sheet = SpriteSheet(file_name='images/spritesheet.png') # Make the Play and Scores button. play_button = Button(screen=screen, msg="Play", order=0) score_button = Button(screen=screen, msg="High Scores", order=1) # Open high score file try: high_score_file = open("high_score_file.txt", "r+") except FileNotFoundError: high_score_file = open("high_score_file.txt", "w+") # Make sound manager sounds = Sounds() # Create an instance to store game statistics and create a scoreboard. stats = GameStats(ai_settings=ai_settings) sb = Scoreboard(ai_settings=ai_settings, screen=screen, stats=stats, sprite_sheet=sprite_sheet, high_score_file=high_score_file) # Make the game objects. ship = Ship(ai_settings=ai_settings, screen=screen, sprite_sheet=sprite_sheet, stats=stats, sb=sb, sounds=sounds) explosions = Group() barriers = [] fleet = Fleet(ai_settings=ai_settings, screen=screen, sprite_sheet=sprite_sheet, sounds=sounds) bullets = Bullets(ai_settings=ai_settings, screen=screen, sprite_sheet=sprite_sheet, stats=stats, sb=sb, ship=ship, fleet=fleet, barriers=barriers, explosions=explosions, sounds=sounds) # Make the event handler event_handler = EventHandler(ai_settings=ai_settings, play_button=play_button, score_button=score_button, stats=stats, sb=sb, ship=ship, bullets=bullets, fleet=fleet, sounds=sounds) # Make the display manager display = Display(ai_settings=ai_settings, screen=screen, sprite_sheet=sprite_sheet, play_button=play_button, score_button=score_button, stats=stats, sb=sb, ship=ship, bullets=bullets, fleet=fleet, barriers=barriers, explosions=explosions, event_handler=event_handler) # Start the main loop for the game. while True: event_handler.check_events(display=display) if stats.game_active: ship.update() bullets.update_bullets(display=display) fleet.update_aliens(ship=ship, display=display, bullets=bullets) fleet.update_ufos() display.update_screen()