def run_game():
    pygame.init()
    ai_settings = Settings()

    #ustawienia okienka
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    pygame.display.set_caption("Inwazja obcych")
    play_button = Button(ai_settings, screen, "Gra")
    #stworzenie statku 'ship' i grupy pocisków 'bullets'
    ship = Ship(ai_settings, screen)
    alien = Alien(ai_settings, screen)
    star = Star(ai_settings, screen)
    bullets = Group()
    aliens = Group()
    stars = Group()
    gf.create_fleet(ai_settings, screen, ship, aliens)
    stats = GameStats(ai_settings)
    sb = Scoreboard(ai_settings, screen, stats)
    #pętla gry
    while True:
        gf.check_events(ai_settings, screen, stats, sb, play_button, ship,
                        aliens, bullets, star, stars)
        if stats.game_active:
            ship.update()
            gf.update_bullets(ai_settings, screen, stats, sb, ship, aliens,
                              bullets)
            gf.update_aliens(ai_settings, stats, screen, sb, ship, aliens,
                             bullets)
            gf.update_stars(stars)
        gf.update_screen(ai_settings, screen, stats, sb, ship, aliens, bullets,
                         play_button, stars)
Exemple #2
0
def run_game():
    pygame.init()
    ai_settings = Settings()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    pygame.display.set_caption("Pick the stars")

    people = People(ai_settings, screen)
    stars = Stars(ai_settings, screen)
    alien = Alien(ai_settings, screen)
    bullets = Group()
    stats = GameStats(ai_settings)
    sb = Scoreboard(ai_settings, screen, stats)
    play_button = Button(ai_settings, screen, "Play")

    while True:
        gf.check_events(ai_settings, stats, sb, people, alien, bullets,
                        play_button)
        bullets.update()
        for bullet in bullets.copy():
            if bullet.rect.bottom >= ai_settings.screen_height:
                bullets.remove(bullet)
        if stats.game_active:
            people.update()
            gf.update_alien(alien)
            gf.update_stars(ai_settings, stats, sb, people, stars)
            if alien.rect.x % 120 == 0:
                gf.update_bullet(ai_settings, stats, screen, people, alien,
                                 bullets)

        gf.update_screen(ai_settings, stats, sb, screen, people, stars, alien,
                         bullets, play_button)
def run_game():

    pygame.init()

    music.play_menu_music()

    game_settings = Settings()

    screen = pygame.display.set_mode(game_settings.get_screen_size())

    pygame.display.set_caption('Alien Invasion')

    stats = GameStats(game_settings)

    ship = Ship(game_settings, screen)

    ufos = Group()

    bullets = Group()

    stars = Group()

    explosions = Group()

    play_button = Button(game_settings, screen, 'Play')

    current_score = CurrentScore(game_settings, screen, stats)

    hi_score = HiScore(game_settings, screen, stats)

    level = Level(game_settings, screen, stats)

    lifes = Group()

    while True:

        game_functions.check_events(game_settings, screen, stats, ship, ufos,
                                    bullets, play_button, lifes)

        game_functions.star_creation(game_settings, screen, stars)

        if stats.game_active:

            ship.update()
            game_functions.update_bullets(bullets, ufos)
            game_functions.update_ufos(game_settings, screen, stats, ship,
                                       ufos, bullets, explosions, lifes)

        game_functions.update_screen(game_settings, screen, stats, ship, ufos,
                                     bullets, stars, explosions, play_button,
                                     current_score, hi_score, level, lifes)

        game_functions.update_collisions(game_settings, screen, stats, ship,
                                         ufos, bullets, explosions,
                                         current_score)
        game_functions.update_explosions(game_settings, explosions)

        game_functions.update_stars(stars, game_settings)
def run_game():
    """Initialize a game, display."""
    pygame.init()
    game_settings = Settings()
    screen = pygame.display.set_mode(
        (game_settings.screen_width, game_settings.screen_height))
    pygame.display.set_caption(game_settings.game_name)

    # Make the Play button.
    play_button = Button(game_settings, screen, "Play")
    # Make describtion.
    description = Description(game_settings, screen, "Project by Andrii Dykyi")
    # Create an instance to store game statistics.
    stats = GameStats(game_settings)
    score_board = Scoreboard(game_settings, screen, stats)

    background_image = pygame.image.load(
        game_settings.background_image).convert()

    # Create rocket.
    rocket = Rocket(game_settings, screen)

    # Make a group to store bullets in.
    bullets = Group()
    # Make a meteorite.
    meteorites = Group()
    # Make a star.
    stars = Group()
    # Make an explosion.
    explosions = Group()

    while True:
        game_functions.check_event(game_settings, screen, stats, play_button,
                                   rocket, meteorites, stars, bullets,
                                   score_board, explosions)

        if stats.game_active:
            rocket.update()

            game_functions.update_bullets(bullets, screen, meteorites)

            game_functions.update_meteorites(game_settings, stats, screen,
                                             rocket, meteorites, score_board,
                                             explosions)

            game_functions.update_explosions(explosions)

            game_functions.update_stars(game_settings, stats, screen, rocket,
                                        stars, score_board)

        game_functions.update_screen(background_image, game_settings, screen,
                                     stats, score_board, rocket, stars,
                                     meteorites, bullets, play_button,
                                     explosions, description)
Exemple #5
0
def run_game():
    #Initialize game and create a screen object
    pygame.init()

    ai_settings = Settings()

    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))

    pygame.display.set_caption("Alien Invasion")

    #Make the play button.
    play_button = Button(ai_settings, screen, 'play')

    #Creat an instance of to store game statistics
    stats = GameStats(ai_settings)
    sb = Scoreboard(ai_settings, screen, stats)
    #Display the ship
    ship = Ship(screen, ai_settings)

    #Make a group of bullets and aliens
    bullets = Group()
    aliens = Group()
    stars = Group()

    #Create a fleet of aliens.
    gf.create_fleet(ai_settings, screen, aliens, ship)

    #Create the stars
    gf.create_star(ai_settings, screen, stars)

    #Start the main loop for the game
    while True:
        #Watch for keyboard and mouse events
        gf.check_events(ship, ai_settings, screen, bullets, stats, play_button,
                        aliens, sb)

        if stats.game_active:
            #Update ship movement based on keypresses
            ship.update()
            #Manage the bullets movement
            gf.update_bullets(ai_settings, screen, ship, aliens, bullets, sb,
                              stats)
            #Move the aliens
            gf.update_aliens(ai_settings, ship, screen, aliens, bullets, stats,
                             sb)
            #Update the stars position
            gf.update_stars(stars, ai_settings)

        #Redraw and update the screen
        gf.update_screen(ai_settings, screen, ship, bullets, aliens, stars,
                         stats, play_button, sb)
Exemple #6
0
def run_game():
    # create a screen and launch the game
    pygame.mixer.pre_init(44100, -16, 16, 2048)
    pygame.mixer.init()
    pygame.init()
    ai_settings = Settings()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))

    pygame.display.set_caption("Alien Invasion")
    play_button = Button(ai_settings, screen, "Play")
    # make a ship, bullet, alien
    sounds = Sounds()
    images = Images()
    bullets = Group()
    aliens = Group()
    stars = Group()
    powerups = Group()
    ship = Ship(ai_settings, screen, images)
    stats = GameStats(ai_settings)
    sb = Scoreboard(ai_settings, screen, stats)
    counter = Counter(ai_settings, screen, stats)

    # create a fleet
    if stats.game_active:
        gf.create_stars(ai_settings, screen, stars)
        gf.create_powerup(ai_settings, screen, powerups)

    # main game loop

    while True:
        gf.check_events(ai_settings, screen, stats, play_button, ship, bullets, sounds, images)
        gf.update_screen(ai_settings, screen, stats, sb, stars, ship, aliens, bullets,
                         play_button, counter, powerups, sounds)
        if stats.game_active:
            gf.update_bullets(ai_settings, screen, ship, aliens, bullets, sb, stats, sounds)
            gf.create_stars(ai_settings, screen, stars, images)
            gf.create_powerup(ai_settings, screen, powerups, images)
            gf.update_aliens(ai_settings, stats, screen, ship, aliens, bullets, images)
            gf.update_stars(stars, ai_settings)
            gf.update_powerup(powerups, ai_settings)
            gf.update_timer(ai_settings)
            gf.powerup_check(ship, powerups, ai_settings, images, sounds, stats)
            bullets.update()
            stars.update()
            powerups.update()
            aliens.update()
            ship.update(bullets, ai_settings, screen, ship, sounds, images)
            screen.fill(ai_settings.bg_color)
Exemple #7
0
def run_game():
    # Initialize game and create a screen object.
    pygame.init()
    ai_settings = Settings()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    pygame.display.set_caption("Alien Invasion")

    # Make the Play button.
    play_button = Button(ai_settings, screen, "Play")

    # Create an instance to store game statistics and create a scoreboard.
    stats = GameStats(ai_settings)
    sb = Scoreboard(ai_settings, screen, stats)

    # Set a background
    background = Background("images/background.bmp", [0, 0], screen)

    # Play music
    gf.playback()

    # Make a ship, a group of bullets, and a group of aliens..
    ship = Ship(ai_settings, screen)
    bullets = Group()
    aliens = Group()
    stars = Group()

    # Create the fleet of aliens.
    gf.create_fleet(ai_settings, screen, ship, aliens)

    # Start the main loop for the game.
    while True:

        # Watch for keyboard and mouse events.
        gf.check_events(ai_settings, screen, stats, sb, play_button, ship,
                        aliens, bullets)

        if stats.game_active:
            gf.create_stars_fleet(screen, stars, ai_settings)
            gf.update_stars(stars)
            ship.update()
            gf.update_bullets(ai_settings, screen, stats, sb, ship, aliens,
                              bullets)
            gf.update_aliens(ai_settings, stats, screen, sb, ship, aliens,
                             bullets)

        gf.update_screen(ai_settings, screen, stats, sb, ship, aliens, bullets,
                         background, stars, play_button)
def run_game():
    # 初始化游戏并创建一个屏幕对象
    pygame.init()
    ai_settings = Settings()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    pygame.display.set_caption('Alien Invasion')

    # 创建Play按钮
    play_button = Button(ai_settings, screen, 'Play')

    # 创建状态管理
    stats = GameStats(ai_settings)
    # 创建计分器
    sb = Scoreboard(ai_settings, screen, stats)
    # 创建一艘飞船
    ship = Ship(ai_settings, screen)
    # 创建一个用于存储子弹的编组
    bullets = Group()
    # 创建一群外星人
    aliens = Group()
    # 创建星星
    stars = Group()
    # 创建外星人群
    gf.create_fleet(ai_settings, screen, ship, aliens)
    # 创建星星群
    gf.create_stars(ai_settings, screen, stars)

    # 开始游戏的主循环
    while True:
        # 监听键盘和鼠标事件
        gf.check_events(ai_settings, screen, ship, bullets, aliens, stats,
                        play_button, sb)

        if stats.game_active:
            ship.update()
            gf.update_stars(ai_settings, stars)
            gf.update_bullets(ai_settings, screen, ship, bullets, aliens,
                              stats, sb)
            gf.update_aliens(ai_settings, stats, screen, ship, aliens, bullets,
                             sb)

        gf.update_screen(ai_settings, screen, ship, bullets, aliens, stars,
                         stats, play_button, sb)
Exemple #9
0
def run_game():
    # Initialize game and create settings, stats,  and screen objects.
    pygame.init()
    ai_settings = Settings()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    stats = GameStats(ai_settings)
    sb = Scoreboard(ai_settings, screen, stats)
    pygame.display.set_caption("Alien Invasion")

    # Make the Play button.
    play_button = Button(ai_settings, screen, "Play")

    # Make a ship, a group of bullets, a group of aliens, and a
    # starfield.
    ship = Ship(ai_settings, screen)
    bullets = Group()
    aliens = Group()
    stars = Group()

    # Create a fleet of aliens.
    gf.create_fleet(ai_settings, screen, ship, aliens)

    # Create the initial starfield.
    gf.create_starfield(ai_settings, screen, stars)

    # Start the main game loop.
    while True:
        gf.check_events(ai_settings, screen, stats, sb, play_button, ship,
                        aliens, bullets)
        gf.update_stars(ai_settings, screen, stars)

        if stats.game_active and (stats.game_paused == False):
            ship.update()
            gf.update_bullets(ai_settings, screen, stats, sb, ship, aliens,
                              bullets)
            gf.update_aliens(ai_settings, screen, stats, sb, ship, aliens,
                             bullets)

        gf.update_screen(ai_settings, screen, stats, sb, ship, aliens, bullets,
                         stars, play_button)
Exemple #10
0
def run_game():
    # Initialize pygame, settings, and screen object
    pygame.init()
    ai_settings = Settings()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    pygame.display.set_caption("Alien Invasion")

    # Create an instance to store game statistics and create a scoreboard.
    stats = GameStats(ai_settings)
    sb = Scoreboard(ai_settings, screen, stats)
    # Make a ship.
    ship = Ship(ai_settings, screen)
    # Make a group to store bullets in.
    bullets = Group()
    # Make group for stars
    stars = Group()
    # Make a group to store aliens.
    aliens = Group()
    # Create the fleet of aliens.
    gf.create_fleet(ai_settings, screen, ship, aliens)
    # Make play button.
    play_button = Button(ai_settings, screen, "Play")

    # Start the main loop for the game.
    while True:
        gf.check_events(ai_settings, screen, stats, sb, play_button, ship,
                        aliens, bullets)

        if stats.game_active:
            ship.update()
            gf.update_bullets(ai_settings, screen, stats, sb, ship, aliens,
                              bullets)
            gf.update_aliens(ai_settings, stats, screen, sb, ship, aliens,
                             bullets)

        gf.gen_stars(ai_settings, screen, stars)
        gf.update_stars(ai_settings, stars, screen)
        gf.update_screen(ai_settings, screen, stats, sb, ship, aliens, bullets,
                         stars, play_button)
Exemple #11
0
def run_game():
    #Set gaming window
    pygame.init()
    default_setting = Settings()
    screen = pygame.display.set_mode(default_setting.screen_size)
    pygame.display.set_caption("Alien Invasion")

    stats = GameStats(default_setting)
    score = Score(default_setting, screen, stats)
    level = Level(default_setting, screen, stats)
    play = Button(default_setting, screen, "play".upper())

    ship = Ship(screen, default_setting)
    #Create a groups to manage
    bullets = Group()
    aliens = Group()
    stars = Group()
    lives = Group()
    game.set_lives(default_setting, screen, stats, lives)

    game.create_fleet(default_setting, screen, aliens, ship)

    while True:
        #Check keyboard
        game.check_events(ship, default_setting, screen, score, level, bullets,
                          stats, play, lives)

        if stats.active:
            game.update_stars(default_setting, stars, screen)
            ship.update()
            game.update_bullets(bullets, aliens, default_setting, screen, ship,
                                stats, score, level)
            game.update_aliens(default_setting, stats, screen, score, aliens,
                               ship, bullets, lives)

        game.update_screen(default_setting, screen, stats, score, level, ship,
                           bullets, aliens, stars, lives, play)
Exemple #12
0
def run_game():
    # Initialize Pygame
    pygame.mixer.pre_init(frequency=44100)
    pygame.init()
    # Initialize settings, preload assets, and create a clock
    settings = Settings()
    sounds = Sounds(settings)
    images = Images()
    clock = pygame.time.Clock()
    # Set up the window
    pygame.display.set_icon(images.icon)
    screen = pygame.display.set_mode(
        (settings.screen_width, settings.screen_height))
    pygame.display.set_caption("Bullet Heck!")
    # Try to create a joystick object
    try:
        gamepad = Joystick(settings.gamepad_id)
        gamepad.init()
        settings.gamepad_connected = True
    except pygame.error:
        gamepad = None
        settings.gamepad_connected = False
    # Initialize the stats, HUD, and splash screen
    stats = Stats(settings)
    hud = HUD(settings, screen, stats, images)
    splash = SplashScreen(settings, images, screen)
    # Create the ship and groups for everything else
    ship = Ship(settings, screen, stats, images)
    stars = Group()
    bullets = Group()
    enemies = Group()
    enemy_bullets = Group()
    explosions = Group()
    pickups = Group()
    if not settings.mute_music:
        pygame.mixer.music.play(loops=-1)
    # Pause the music by default
    pygame.mixer.music.pause()
    # Main loop
    while stats.done is False:
        gf.check_events(settings, screen, ship, gamepad, bullets, stats,
                        sounds, enemies, images, enemy_bullets, splash, hud)
        gf.update_stars(settings, screen, stars, images)
        gf.manage_game_level(settings, stats)
        if stats.game_active:
            ship.update(settings, images)
            gf.spawn_enemies(settings, screen, enemies, images, id, stats)
            gf.update_bullets(settings, screen, ship, bullets, enemies, sounds,
                              enemy_bullets, images, stats, hud, explosions,
                              pickups, splash)
            gf.update_enemy_stuff(settings, screen, ship, enemies, sounds,
                                  stats, explosions, images, pickups, hud,
                                  bullets, enemy_bullets, splash)
        # Update the explosions even if the game is paused.
        gf.update_explosions(explosions)
        gf.update_screen(settings, screen, stars, ship, bullets, enemies,
                         explosions, pickups, hud, stats, enemy_bullets,
                         splash)
        clock.tick(settings.fps_limit)
        if settings.show_fps:
            stats.fps = clock.get_fps()