Exemplo n.º 1
0
def run_game():
    """Initialize game, settings and create a screen object."""
    pygame.init()
    ai_settings = Settings()
    screen = Screen()

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

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

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

    # Start main loop for the game.
    while True:
        gf.check_event(ai_settings, screen, stats, sb, play_button, ship,
                       aliens, bullets)
        if stats.game_active:
            ship.update()
            gf.update_aliens(ai_settings, stats, screen, sb, ship, aliens,
                             bullets)
            gf.update_bullet(ai_settings, screen, stats, sb, ship, aliens,
                             bullets)
        gf.update_screen(screen, stats, sb, ship, aliens, bullets, play_button)
Exemplo n.º 2
0
def run_game():
    pygame.init()
    setting = Setting()
    screen = pygame.display.set_mode(
        (setting.screen_with, setting.screen_height))
    pygame.display.set_caption(setting.title)
    stats = GameStats(setting)
    stats.max_score = gf.get_record_score()
    gf.check_joystick(stats)

    play_button = Button(screen, 'Play Game')
    score_b = Scoreboard(setting, screen, stats)

    ship = Ship(setting, screen)
    bullets = Group()
    aliens = Group()
    left_ships = Group()
    gf.creat_left_ships(setting, screen, stats, left_ships)

    while True:
        gf.check_event(setting, screen, stats, play_button, ship, aliens,
                       bullets, score_b)
        if stats.game_active:
            ship.update_place(setting)
            gf.update_bullet(setting, stats, bullets, aliens, score_b)
            gf.update_aliens(setting, screen, stats, ship, aliens, bullets)
        gf.update_screen(setting, screen, stats, ship, aliens, bullets,
                         play_button, score_b, left_ships)
Exemplo n.º 3
0
def run_game():
    # Intialize pygame, settings, and scree object.
    pygame.init()
    settings = Settings()
    screen = pygame.display.set_mode(settings.get_display())
    pygame.display.set_caption("Alien Invasion")

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

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

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

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

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

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

        gf.update_screen(settings, screen, stats, sb, ship, aliens, bullets, play_button)
Exemplo n.º 4
0
def run_game():
    #初始化游戏并创建一个屏幕对象
    pygame.init()
    #screen = pygame.display.set_mode((1200, 800))
    ai_settings = Settings()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    pygame.display.set_caption("Alien Invasion")
    #bg_color = (230, 230, 230)
    ship = Ship(ai_settings, screen)
    alien = Alien(ai_settings, screen)

    bullets = Group()
    aliens = Group()

    #创建外星人群
    gf.create_fleet(ai_settings, screen, ship, aliens)

    #开始游戏主循环
    while True:
        gf.check_events(ai_settings, screen, ship, bullets)
        ship.update()
        bullets.update()
        #删除已消失
        gf.update_bullet(ai_settings, screen, ship, aliens, bullets)
        gf.update_aliens(ai_settings, ship, aliens)
        gf.update_screen(ai_settings, screen, ship, aliens, bullets)
Exemplo n.º 5
0
def run_game():
    """Runs the game"""
    pygame.init()
    game_setting = Settings()
    screen = pygame.display.set_mode(
        (game_setting.screen_width, game_setting.screen_height))
    pygame.display.set_caption('Alien Invasion')
    stats = Game_status(game_setting)
    sboard = Scoreboard(game_setting, screen, stats)
    ship = Ship(game_setting, screen)
    bullets = Group()
    aliens = Group()
    play_button = Button(game_setting, screen, "play")

    while True:
        gf.check_events(game_setting, screen, stats, ship, aliens, bullets,
                        play_button, sboard)
        if stats.game_active:
            ship.update(game_setting.ship_speed)
            gf.update_bullet(game_setting, screen, stats, aliens, bullets,
                             ship, sboard)
            gf.update_aliens(game_setting, stats, screen, ship, aliens,
                             bullets, sboard)
        gf.update_screen(game_setting, screen, stats, ship, aliens, bullets,
                         play_button, sboard)
Exemplo n.º 6
0
def run_game():
    """初始化游戏并创建屏幕对象"""
    pygame.init()
    ai_setting = settings.Settings()
    screen = pygame.display.set_mode((ai_setting.screen_width, ai_setting.screen_height))
    pygame.display.set_caption("Alien Invasion")
    play_button = Button(ai_setting, screen, "Play")

    # 创建一艘飞船
    ship = Ship(ai_setting, screen)

    # 创建一个用于存储子弹的编组
    bullets = Group()

    # 创建外星人编组
    aliens = Group()
    game_functions.create_fleet(ai_setting, screen, aliens, ship)

    # 创建游戏数据
    game_status = GameStatus(ai_setting)
    scoreboard = Scoreboard(ai_setting, screen, game_status)

    # 游戏主循环
    while True:
        game_functions.check_events(ai_setting, screen, aliens, ship, bullets, game_status, play_button, scoreboard)

        if game_status.game_active:
            ship.update()
            game_functions.update_bullet(aliens, bullets, ai_setting, screen, ship, game_status, scoreboard)
            game_functions.update_aliens(aliens, ai_setting, ship, game_status, screen, bullets, scoreboard)

        game_functions.update_screen(ai_setting, screen, ship, aliens, bullets, game_status, play_button, scoreboard)
Exemplo n.º 7
0
def run_game():
    pygame.init()
    # 引入设置类
    settings = Settings()
    # 首先创建一个用于显示的屏幕,这个很重要,后面一直在他上面显示
    screen = pygame.display.set_mode(
        (settings.screen_width, settings.screen_height))
    # 设置标题
    pygame.display.set_caption('大战外星人')
    # 设置背景颜色
    bg_color = settings.bg_color
    # 创建飞船
    ship = Ship(screen, settings)
    # 创建子弹编组
    bullets = Group()
    # 创建一个外星人编组
    aliens = Group()
    # 创建外星人
    gf.create_aliens(settings, screen, aliens)
    #开始游戏的主循环
    while True:
        # 监视鼠标和键盘事件
        gf.check_events(settings, screen, ship, bullets)
        # 根据上面返回的结果,处理飞船
        ship.update()
        # 绘制子弹
        gf.update_bullet(bullets)
        # 外星人移动
        gf.update_aliens(settings, aliens)
        #绘制屏幕
        gf.update_screen(settings, screen, ship, bullets, aliens)
Exemplo n.º 8
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)
Exemplo n.º 9
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("Alien Invasion")

    play_button = Button(ai_settings,screen,"Play")
    stats = GameStats(ai_settings)
    sb = Scoreboard(ai_settings,screen,stats)
    ship=Ship(ai_settings,screen)
    bullets = Group()
    #设置背景色
    bg_color = (230,230,230)
    aliens=Group()
    gf.create_fleet(ai_settings,screen,ship,aliens)


    #开始游戏主循环
    while True:
        gf.check_events(ai_settings,screen,stats,sb,play_button,ship,aliens,bullets)
        if stats.game_active:
            ship.update()
            gf.update_bullet(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,play_button)
Exemplo n.º 10
0
def run_game():
    """" 运行游戏。 """
    pygame.init()
    ai_setting = Settings()
    pygame.display.set_caption("Alien Invasion")
    
    screen =pygame.display.set_mode(
        (ai_setting.screen_width,ai_setting.screen_height))
    
    #创建游戏物体
    play_button = Button(ai_setting, screen, 'Play')
    stats = GameStats(ai_setting)
    sb = Scoreboard(ai_setting, screen, stats)
    
    ship = Ship(ai_setting, screen)
    alines = Group()
    bullets = Group()
    
    #临时变量
    gf.creat_fleet(ai_setting, screen, alines)
    
    #游戏主循环
    while True:
        
        gf.check_events(ai_setting, screen, alines, bullets, ship, stats, sb,
                        play_button)
        
        if stats.game_active:
            ship.update()
            gf.update_bullet(ai_setting, screen, alines, bullets, stats, sb)
            gf.update_alines(ai_setting, stats, sb, screen, ship, alines, bullets)
        
        gf.update_screen(ai_setting, screen, stats, ship, alines, bullets,
                         play_button, sb)
Exemplo n.º 11
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")

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

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

    # Create an instance to store game statistics.
    stats = GameStats(ai_settings)
    play_button = Button(ai_settings, screen, "Play")
    scoreboard = Scoreboard(ai_settings, screen, stats)
    # Start the main loop for the game.
    while True:
        gf.check_events(ai_settings, screen, stats, scoreboard, play_button,
                        ship, aliens, bullets)

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

        gf.update_screen(ai_settings, screen, stats, scoreboard, ship, aliens,
                         bullets, play_button)
Exemplo n.º 12
0
def run_game():
    pygame.init()
    setting = Setting()
    stats = GameStats(setting)
    screen = pygame.display.set_mode((setting.width, setting.height))
    pygame.display.set_caption("Alien  Invasion")

    ship = Ship(screen, setting)
    bullets = Group()
    aliens = Group()  # Alien(setting,screen)
    gf.creat_fleet(setting, screen, aliens, ship)
    playbutton = Button(screen, setting, 'play')
    board = Board(setting, screen, stats)

    while True:
        gf.check_events(aliens, playbutton, stats, setting, screen, ship,
                        bullets)
        if stats.game_active:
            ship.update()
            gf.update_bullet(setting, screen, ship, bullets, aliens, board,
                             stats)
            gf.update_aliens(setting, screen, ship, bullets, aliens, stats,
                             board)
        #print(len(aliens))444
        gf.update_window(setting, screen, ship, bullets, aliens, playbutton,
                         stats, board)
Exemplo n.º 13
0
def run_game():
    # 初始化pygame,创建一个窗口
    pygame.init()
    # 创建Settings对象
    ai_settings = Settings()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    pygame.display.set_caption('alien_invasion')

    # 创建一艘飞船
    ship = Ship(screen, ai_settings)

    # 创建一个外星人
    aliens = Group()
    gf.create_fleet(ai_settings, screen, aliens, ship)

    # 创建一个存储子弹的编组
    bullets = Group()

    # 游戏的主循环
    while True:

        # 监视鼠标和键盘事件
        gf.check_events(ship, ai_settings, screen, bullets)
        # 调用飞船移动的方法
        ship.update()
        # 调用管理子弹的方法
        gf.update_bullet(bullets, aliens, ai_settings, screen, ship)
        # 调用管理外星人的方法
        gf.update_aliens(aliens, ai_settings)
        # 每次循环重绘屏幕
        gf.update_screen(ai_settings, screen, ship, bullets, aliens)
Exemplo n.º 14
0
def run_game():
    bg = pygame.image.load("images/map01.jpeg")
    game_settings = Settings()
    pos_x = 0  #地图移动

    pygame.init()
    screen = pygame.display.set_mode(
        (game_settings.screen_width, game_settings.screen_height))
    pygame.display.set_caption("XiaoBai Game")
    stats = GameStats(game_settings)
    player = Game_Player(game_settings, screen)
    bullets = Group()
    boss = Group()
    enemys = Group()
    win_button = Button(game_settings, screen, "YOU WIN")
    gf.create_legion(game_settings, screen, enemys)
    gf.create_boss(game_settings, screen, player, boss)

    while True:
        pygame.mouse.set_visible(False)
        gf.check_events(game_settings, screen, player, bullets)
        gf.update_player(game_settings, stats, player, enemys)
        gf.update_bullet(game_settings, bullets, screen, enemys, boss)
        gf.update_enemys(game_settings, enemys)
        gf.update_boss(game_settings, boss)
        gf.update_screen(game_settings, bg, pos_x, screen, player, bullets,
                         enemys, boss, win_button)

        if player.moving_right and player.center > player.screen_rect.centerx and game_settings.boss_appear == False:
            game_settings.screen_rolling = True
            pos_x -= 5  #屏幕滚动速度
        else:
            game_settings.screen_rolling = False
Exemplo n.º 15
0
def run_game():
	pygame.init()
	ai_setting = Setting()
	screen = pygame.display.set_mode((ai_setting.screen_width, ai_setting.screen_height))
	pygame.display.set_caption('alien invasion')

	bg_color = ai_setting.bg_color

	ship = Ship(screen,ai_setting)
	bullets = Group()

	allion = Alion(ai_setting, screen)
	allions = Group()
	gf.create_fleet(ai_setting, screen, allions, ship)

	stats = gs(ai_setting)

	play_btn = Button(ai_setting, screen, 'Play')

	sb = Scoreboard(ai_setting, screen, stats)

# def update_bullet(bullets, allions, ai_setting, screen, ship):
	while 1:
		# def check_events(ai_setting, screen, ship, bullets, stats, play_button, allions):
		gf.check_events(ai_setting, screen, ship, bullets, stats, play_btn, allions)
		if stats.game_active:
			ship.update()
			bullets.update()
			gf.update_aliens(ai_setting, allions, ship, screen, stats, bullets)
			gf.update_bullet(bullets, allions, ai_setting, screen, ship, stats, sb)
		else :
			print('game is done')
		gf.update_screen(ai_setting, screen, ship, bullets, allions, stats, play_btn, sb)
Exemplo n.º 16
0
def run_game():
    pygame.init()
    ai_settings = Settings()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    ship = Ship(screen, ai_settings)
    pygame.display.set_caption("alien vision")
    play_button = Button(screen, ai_settings, "play")
    stats = GameStats(ai_settings)
    sb = ScoreBoard(screen, ai_settings, stats)
    bullets = Group()
    # alien=Alien(ai_settings, screen)
    aliens = Group()

    gf.create_fleet(ai_settings, screen, aliens, ship)

    while True:
        gf.check_events(ai_settings, ship, screen, bullets, stats, play_button,
                        aliens, sb)  # bullets
        if stats.game_active:
            ship.update()
            # bullets.update()
            gf.update_bullet(aliens, bullets, ai_settings, screen, ship, stats,
                             sb)
            gf.update_aliens(ship, aliens, ai_settings, stats, screen, bullets,
                             sb)
        gf.screen_update(ship, screen, ai_settings, bullets, aliens,
                         play_button, stats, sb)  # bullets
Exemplo n.º 17
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('外星葱入侵')

    # 创建一艘飞船、子弹的编组、外星人编组
    ship = Ship(ai_settings, screen)
    bullets = Group()
    aliens = Group()

    # 创建外星人群
    gf.create_fleet(ai_settings, screen, ship, aliens)

    # 创建统计器
    stats = GameStats(ai_settings)

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

    while True:
        gf.check_events(ai_settings, screen, stats, play_button, ship, aliens, bullets)
        ship.update()

        gf.update_bullet(ai_settings, screen, ship, aliens, bullets)
        gf.update_aliens(ai_settings, stats, screen, ship, aliens, bullets)
        gf.update_screen(ai_settings, screen, stats, ship, aliens, bullets, play_button)
Exemplo n.º 18
0
def run_game():
    # 初始化屏幕对象
    pygame.init()
    alien_setting = Setting()
    screen = pygame.display.set_mode((alien_setting.screen_width,\
                                      alien_setting.screen_height)) # 屏幕
    ship = Ship(alien_setting, screen)
    # 子弹集合
    bullets = Group()
    # 外星人集合,
    aliens = Group()
    # 描述状态
    stats = GameStats(alien_setting)
    # 创建一群外星
    gf.create_feet(alien_setting, screen, ship, aliens)
    sb = Scoreboard(alien_setting, screen, stats)
    start_button = Button(alien_setting, screen, "Start")
    pygame.display.set_caption('王尼玛大作战')  # 游戏标题
    while True:
        # 监听鼠标键盘事件
        gf.check_events(alien_setting, stats, sb, start_button, screen, ship,
                        bullets, aliens)
        # 时刻刷新王尼玛的位置
        if stats.game_active:
            ship.update()
            gf.update_bullet(alien_setting, screen, stats, sb, aliens, bullets,
                             ship)
            gf.update_aliens(alien_setting, stats, sb, screen, ship, aliens,
                             bullets)
        # 最近绘制的图像屏幕可见
        gf.update_screen(alien_setting, screen, stats, sb, ship, aliens,
                         bullets, start_button)
Exemplo n.º 19
0
def run_game():
    #初始化游戏并创建一个游戏对象
    pygame.init()  #初始化背景设置
    pygame.display.set_caption('alien_invasion')  #创建标题
    ai_set = Settings()  #设置的类
    screen = pygame.display.set_mode(
        (ai_set.screen_width, ai_set.screen_height))  #设置游戏窗口的大小

    play_button = Button(ai_set, screen, 'Play')  #创建一个按钮
    ship = Ship(screen, ai_set)  #创建一个飞船
    bullets = Group()  #创建一个子弹组
    aliens = Group()  #创建外星人组
    stats = Gamestats(ai_set)

    gf.create_fleet(screen, ai_set, aliens, ship)  #创建外星人群

    #开始游戏主循环
    while True:
        #监视键盘和鼠标事件
        gf.check_event(ship, ai_set, bullets, screen, stats, play_button,
                       aliens)
        if stats.game_active:
            ship.moving()  #飞船的移动
            gf.update_bullet(bullets)  #子弹的移动
            gf.update_aliens(aliens, ai_set)  #外星人的移动
            gf.collision_event(screen, bullets, aliens, ship, ai_set, stats)

        #屏幕刷新
        gf.update_screen(ai_set, screen, ship, bullets, aliens, play_button,
                         stats)
Exemplo n.º 20
0
def run_game():
    """initialize 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")
    # create a ship
    ship = Ship(ai_settings, screen)
    # create a group to store the bullet
    bullets = Group()
    aliens=Group()
    #create a group of the alien
    gf.create_fleet(ai_settings,screen,ship,aliens)
    #create an alien object
    alien=Alien(ai_settings,screen)
    #statistics
    stats=Gamestats(ai_settings)
    #create the play button
    play_button=Button(ai_settings,screen,"play")
    # begin the main loop
    while True:
        # survalence the keyboard and the mouse
        gf.check_events(ai_settings, screen,stats,play_button, ship, bullets)
        if stats.game_active==True:
            # remake the location
            ship.update()
            gf.update_bullet(ai_settings,screen,ship,aliens,bullets)
            gf.update_aliens(ai_settings,stats,screen,ship,aliens,bullets)
        # fill the screen with background color
        # let the recently draw screen visible
        gf.update_screen(ai_settings, screen,stats, ship, aliens,bullets,play_button)
Exemplo n.º 21
0
def run_game():
    """运行游戏方法"""
    #initial the game and create a screen object
    pygame.init()
    #创建 Setting 实例
    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!")

    #创建一个用于存储游戏统计信息的实例
    stats = GameStates(ai_settings)
    sb = Scoreboard(ai_settings, screen, stats)

    #创建一个飞船
    ship = Ship(ai_settings, screen)

    #创建一个存储子弹的编组 Group
    bullets = Group()

    #创建一个外星人
    aliens = Group()
    gf.create_fleet(ai_settings, screen, ship, aliens)

    #读取历史最高分
    gf.read_high_score(stats)
    sb.prep_high_score()

    #The main loop
    while True:
        #检查玩家输入
        gf.check_events(ai_settings, screen, stats, sb, play_button, ship,
                        aliens, bullets)

        #游戏主体需要启动方可运行
        if stats.game_active:
            #更新飞船
            ship.update()
            #更新子弹
            gf.update_bullet(ai_settings, screen, stats, sb, ship, aliens,
                             bullets)
            gf.update_aliens(ai_settings, stats, sb, screen, ship, aliens,
                             bullets)

        #重绘屏幕
        gf.update_screen(ai_settings, screen, stats, sb, ship, aliens, bullets,
                         play_button)
def run_game():
    pygame.init()
    ai_settings = Settings()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    background = pygame.image.load('images/space.bmp').convert()
    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()

    # 创建一个用户存储外星人子弹的编组
    alien_bullets = Group()

    while True:
        gf.check_events(ai_settings, screen, stats, sb, play_button, ship,
                        aliens, bullets, alien_bullets)

        if stats.game_active:
            gf.create_fleet(ai_settings, screen, aliens)
            gf.create_alien_bullet(ai_settings, screen, aliens, ship,
                                   alien_bullets)
            ship.update()
            bullets.update()
            alien_bullets.update()
            gf.update_bullet(ai_settings, screen, stats, sb, ship, aliens,
                             bullets)
            gf.update_aliens(ai_settings, stats, sb, screen, ship, aliens,
                             bullets, alien_bullets)
            gf.update_alien_bullets(ai_settings, stats, sb, screen, ship,
                                    aliens, bullets, alien_bullets)

        gf.update_screen(ai_settings, screen, stats, sb, ship, aliens, bullets,
                         play_button, background, alien_bullets)
Exemplo n.º 23
0
    def run_game(self):
        # alien=Alien(self.settings,self.screen);
        while True:
            gf.check_events(self.settings, self.screen, self.ship,
                            self.bullets)
            # self.screen.fill(self.settings.bg_color)
            # self.ship.blitme()
            self.ship.update()

            gf.update_bullet(self.settings, self.screen, self.ship,
                             self.bullets, self.aliens)
            gf.update_aliens(self.settings, self.aliens)

            gf.update_screen(self.settings, self.screen, self.ship,
                             self.bullets, self.aliens)
Exemplo n.º 24
0
def run_game():
    """初始化游戏并创建对象"""
    pygame.init()
    ai_settings = Settings()
    size = (ai_settings.screen_width, ai_settings.screen_height)
    screen = pygame.display.set_mode(size)
    pygame.display.set_caption('Alien Invasion')
    # 创建一艘飞船
    ship = Ship(ai_settings, screen)
    bullets = Group()
    while True:
        gf.check_events(ai_settings, screen, ship, bullets)
        ship.update()
        gf.update_bullet(bullets)
        gf.update_screen(ai_settings, screen, ship, bullets)
Exemplo n.º 25
0
def run_game():
    """初始化游戏并创建屏幕对象"""

    ai_settings = Settings()
    #不能直接用类调用 需要用实例调用

    pygame.init()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    pygame.display.set_caption(ai_settings.game_title)
    """创建play按钮"""
    play_button = Button(ai_settings, screen, 'Play')

    bg_color = ai_settings.bg_color

    stats = GameStats(ai_settings)
    sb = Scoreboard(ai_settings, screen, stats)
    ship = Ship(ai_settings, screen)
    flash = Flash(ship, ai_settings, screen)

    #bullet
    bullets = Group()

    #alien
    aliens = Group()
    gf.creat_fleet(ai_settings, screen, aliens, ship)

    #stars
    stars = Group()
    #gf.creat_bg(ai_settings, screen, stars)
    """开始游戏循环"""
    while True:

        gf.check_event(ai_settings, screen, ship, bullets, flash, stats,
                       play_button, aliens, sb)
        stars.update()
        gf.update_star(stars, ai_settings)
        if stats.game_active:
            ship.update()
            flash.update()
            gf.update_bullet(ai_settings, screen, aliens, ship, bullets, stats,
                             sb)
            gf.update_aliens(ai_settings, aliens, ship, bullets, stats, screen,
                             sb)

        gf.creat_bg(ai_settings, screen, stars)
        gf.update_screen(bg_color, ship, screen, bullets, flash, aliens, stars,
                         ai_settings, play_button, stats, sb)
Exemplo n.º 26
0
def run_game():
    # Intialize pygame, settings, and scree object.
    pygame.init()
    settings = Settings()
    screen = pygame.display.set_mode(settings.get_display())
    pygame.display.set_caption("Alien Invasion")
    # Make the play button.
    play_button = Button(settings, screen, "Play", (600, 600))
    hs_button = Button(settings, screen, "Highscores", (600, 670))
    back_button = Button(settings, screen, "Back", (600, 720))

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

    # Make a ship, a group of bullets, and a group of aliens
    ship = Ship(settings, screen)
    lasers = Group()
    bullets = Group()
    aliens = Group()
    ufos = Group()

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

    # Initialize Music
    # Music taken from https://bitmidi.com/space-invaders-do-the-freak-mid
    # Sprites and sound effects taken from https://www.classicgaming.cc/classics/space-invaders/sounds
    pygame.mixer.music.load('music/Space Invaders - Do The Freak.mid')
    pygame.mixer.music.play(-1, 0.0)

    # Star the main loop for the game.
    while True:
        gf.check_events(settings, screen, stats, sb, play_button, ship, aliens, ufos, bullets, lasers, hs, hs_button, back_button)

        if stats.game_active:
            ship.update()
            gf.update_bullet(settings, screen, stats, sb, ship, aliens, ufos, bullets, lasers)
            gf.update_laser(settings, screen, stats, sb, ship, aliens, ufos, bullets, lasers, hs)
            gf.update_aliens(settings, screen, stats, sb, ship, aliens, ufos, bullets, lasers, hs)

        gf.update_screen(settings, screen, stats, sb, ship, aliens, ufos, bullets, lasers, play_button, hs_button, back_button, hs)
Exemplo n.º 27
0
def run_game():
    # 初始化游戏并创建屏幕对象
    pygame.init()
    ai_settings = Settings()
    scree = pygame.display.set_mode(
        (ai_settings.scree_width, ai_settings.scree_height))
    pygame.display.set_caption("Alien Invasion")

    # 绘制飞船
    ship = Ship(scree, ai_settings)
    # 创建子弹组
    bullets = Group()
    # 开始游戏
    while True:
        gf.check_events(ai_settings, scree, ship, bullets)
        ship.update()
        bullets.update()
        gf.update_bullet(bullets)
        gf.update_scree(ai_settings, scree, ship, bullets)
Exemplo n.º 28
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!")

    # Make a ship
    ship = Ship(ai_settings, screen)
    # Make a group to store bullets in.
    bullets = Group()

    # Start the main loop for the game.
    while True:
        gf.check_events(ai_settings, screen, ship, bullets)
        ship.update()
        gf.update_bullet(bullets)
        gf.update_screen(ai_settings, screen, ship, bullets)
Exemplo n.º 29
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('Alien Invasion')
    ship = Ship(screen, ai_settings)
    bullets = Group()
    aliens = Group()
    stats = GameStats(ai_settings)
    gf.create_fleet(ai_settings, screen, aliens, ship)

    while True:
        gf.check_events(ai_settings, screen, ship, bullets)
        if stats.game_active:
            ship.update()
            gf.update_bullet(ai_settings, screen, bullets, aliens, ship)
            gf.update_alien(ai_settings, screen, aliens, ship, stats)

        gf.update_screen(ai_settings, screen, ship, aliens, bullets)
Exemplo n.º 30
0
def run_game():
    pygame.init()
    ai_settings = Settings()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    ship = Ship(ai_settings, screen)
    bullets = Group()
    aliens = Group()
    #添加空白的注释
    gf.creat_fleet(ai_settings, screen, ship, aliens)
    #创建一群外星人
    pygame.display.set_caption("Alian Invasion")

    while True:

        gf.check_events(ai_settings, screen, ship, bullets)
        #事件监测
        ship.updata()
        gf.update_bullet(bullets)
        gf.update_screen(ai_settings, screen, ship, aliens, bullets)