예제 #1
0
def run_game():
    settings = Settings()
    # 初始化游戏并创建一个屏幕对象
    pygame.init()
    screen = pygame.display.set_mode((settings.screen_width, settings.screen_height))
    controller = Controller(screen, settings)
    # 用于存放所有的砖块
    blocks = Group()
    for x in range(settings.block_count):
        block = Block(settings, screen)
        ran = random.randint(0, 100)
        if ran < settings.destory_occurrence_rate:
            # 15 % 的概率生成无法破坏的砖块
            block.destory = False
            block.color = (120, 120, 120)
        blocks.add(block)
    pygame.display.set_caption("block_game")
    # 用于存放所有的弹球
    group = Group()
    # 存放控制器的iterator
    controllers = Group()
    controllers.add(controller)
    # 用于存放奖励
    awards = Group()
    # 进行循环判断当前的状态
    game_contiune = True
    while game_contiune:
        gf.check_event(controller, group, settings, screen)
        controller.update()
        gf.update_screen(settings, screen, controller, group, blocks, awards)
        group.update()
        # awards.update()
        gf.update_block(group=group, blocks=blocks, controllers=controllers, awards=awards,
                                        settings=settings,
                                        screen=screen, controller=controller, game_contiune=game_contiune)
예제 #2
0
def run_game():
    #初始化一个游戏,并创建一个屏幕对象通过导入设置类Setting
    pygame.init()
    ai_setting = Setting()
    game_stats = GameStats(ai_setting)
    """通过导入的设置模块初始化屏幕实例"""
    screen = pygame.display.set_mode(
        (ai_setting.screen_width, ai_setting.screen_height))
    pygame.display.set_caption("外星人")
    ship = Ship(ai_setting, screen)
    """通过ship模块实例化飞船"""
    bullets = pygame.sprite.Group()
    """实例化子弹集"""
    aliens = pygame.sprite.Group()
    """实例化外星人集"""
    stats = GameStats(ai_setting)
    """实例化游戏状态类"""

    gf.create_fleet(ai_setting, screen, aliens, ship, game_stats)

    while True:
        """游戏主循环,监控游戏的事件及刷新屏幕交给两个函数"""
        if game_stats.ship_over == False:

            gf.ship_ailen(ai_setting, screen, ship, aliens, bullets,
                          game_stats)
            bullets.update(ai_setting, screen, ship, aliens, bullets)
            for alien in aliens.sprites():
                alien.update(game_stats)
            gf.game_over(ai_setting, screen, ship, aliens, bullets, game_stats)
            ship.update()
        gf.check_event(ai_setting, screen, ship, bullets, aliens)

        gf.update_screen(ai_setting, screen, ship, bullets, aliens, game_stats)
예제 #3
0
def run_game():
    """create & show screen"""
    pygame.init()
    ai_settings = Settings()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    pygame.display.set_caption("Alien Evasion")
    """create ship object"""
    ship = Ship(screen, ai_settings)
    """create alien object"""
    # alien = Alien(screen, ai_settings)
    """create a group of aliens"""
    aliens = Group()
    """program start time"""
    start_time = time.time()
    """set timer for aliens creation"""
    timer = 0

    while True:
        # timer += 1
        gf.check_event(ship)
        ship.update()
        gf.update_aliens(screen, ai_settings, aliens, ship)
        # gf.print_numbers(ship)
        gf.update_screen(ai_settings, screen, ship, aliens)
        print(ai_settings.timer)
예제 #4
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('MO')
    ship = Ship(screen, ai_setting)

    bullets = Group()
    aliens = Group()
    gf.create_aliens(ai_setting, screen, aliens, ship)

    stats = GameStats(ai_setting)
    score = Scoreboard(ai_setting, screen, stats)
    play_button = Button(ai_setting, screen, 'PLAY')
    while True:
        gf.check_event(ai_setting, screen, ship, bullets, stats, play_button,
                       score)
        if stats.game_active:
            ship.update()
            gf.update_bullets(ai_setting, screen, ship, aliens, bullets, stats,
                              score)
            gf.update_aliens(ai_setting, screen, ship, aliens, bullets, stats,
                             score)
        gf.update_screen(ai_setting, screen, ship, aliens, bullets, stats,
                         play_button, score)
예제 #5
0
파일: 2048.py 프로젝트: 610832128/2048
def start_game(screen, ai_settings):
    pie = Pie(screen, ai_settings)
    gf.initGame(pie, screen, ai_settings)
    gf.update_screen()
    while True:
        gf.check_event(pie, ai_settings, screen)
        pie.moveBlocks()
def run_game():
    #初始化
    pygame.init()
    ai_setting = Setting()
    screen = pygame.display.set_mode(
        (ai_setting.screen_width, ai_setting.screen_hight))  #创建窗口
    ship = Ship(ai_setting, screen)  #实例化飞船

    stats = Gamestats(ai_setting)  #统计信息
    sb = Scoreboard(ai_setting, screen, stats)  #scoreboard记分牌

    bullets = Group()  #创建子弹的一个列表
    aliens = Group()  #同上

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

    play_button = Button(ai_setting, screen, "Play")
    # 检测操作->game_function
    while True:
        gf.check_event(ai_setting, screen, stats, sb, play_button, ship,
                       aliens, bullets)
        if stats.game_active:
            ship.update()
            gf.update_bullets(ai_setting, screen, stats, sb, ship, aliens,
                              bullets)
            gf.update_aliens(ai_setting, screen, stats, sb, ship, aliens,
                             bullets)

        gf.upgrade_screen(ai_setting, screen, stats, sb, ship, aliens, bullets,
                          play_button)  #更新屏幕函数
예제 #7
0
def run_game():
    eg_settings = Settings()
    pygame.init()
    screen = pygame.display.set_mode(
        (eg_settings.screen_width, eg_settings.screen_height))

    virus = Virus(eg_settings, screen)
    pygame.display.set_caption("virus human")
    humans = Group()
    bullets = Group()
    stats = Stats(eg_settings)
    buttons = Button(eg_settings, screen, stats, virus, bullets, gf)
    sb = Score_Board(eg_settings, screen, stats)

    while True:
        gf.check_event(eg_settings, screen, virus, bullets, humans, buttons,
                       stats, sb)

        if stats.active_game:
            virus.update()

            gf.update_bullet(screen, bullets, humans, eg_settings, virus,
                             stats, sb)
            gf.update_human(humans, virus, stats, bullets, eg_settings, screen,
                            sb)
            if virus.flag:
                gf.fire_humans(eg_settings, screen, humans, virus)

        gf.update_screen(eg_settings, screen, virus, bullets, humans, buttons,
                         stats, sb)
def run_game():
    pygame.init()
    setting = Setting()
    screen = pygame.display.set_mode([setting.width, setting.height])

    #Now create the object of the ship
    ship = Ship(screen, setting)
    pygame.display.set_caption("Alien Games")

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

    #create an instance of gameStats
    stats = GameStats(setting)
    sb = Scoreboard(setting, screen, stats)

    #store a bullet in a list
    bullets = Group()
    aliens = Group()
    gf.create_fleet(setting, screen, aliens, ship)

    while True:
        gf.check_event(setting, screen, stats, play_button, sb, ship, aliens,
                       bullets)
        if stats.game_active:
            ship.update()
            gf.update_bullet(setting, screen, stats, sb, ship, bullets, aliens)
            gf.update_alien(setting, stats, screen, ship, aliens, bullets)
        gf.update_screen(screen, setting, sb, ship, stats, bullets, aliens,
                         play_button)
        screen.blit(setting.bg_image, setting.bg_image.get_rect())
        ship.blitme()
        ship.update()
        pygame.display.flip()
예제 #9
0
def run_game():
    #初始化游戏并创建一个屏幕对象
    pygame.init()
    #生成游戏场景对象,screen对象,飞船,外星人,子弹,游戏状态,按钮,记分牌
    game_setting = Setting()
    screen = pygame.display.set_mode(
        (game_setting.screen_width, game_setting.screen_height))
    pygame.display.set_caption("Alien Invsion")
    bullets = []
    ship = Ship(screen)
    play_button = Button(screen, 'Play')
    stats = GameStats(game_setting)
    score_board = ScoreBoard(game_setting, screen, stats)
    aliens = []
    gf.create_alien_feet(game_setting, screen, ship, aliens)
    #开始游戏的主循环
    while True:
        #获取事件响应
        gf.check_event(game_setting, screen, ship, bullets, stats, play_button,
                       aliens)
        if stats.game_active:
            ship.update()
            gf.update_bullet(game_setting, screen, ship, bullets, aliens,
                             score_board, stats)
            gf.update_alien(game_setting, screen, bullets, aliens, ship, stats)
        gf.update_screen(game_setting, screen, ship, bullets, aliens,
                         play_button, stats, score_board)
예제 #10
0
def 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')
    play_button = Button(ai_setting, screen, "Play")
    stats = GameStats(ai_setting)
    sb = Scoreboard(ai_setting, screen, stats)
    bg_color = (220, 220, 220)
    alian = Alian(ai_setting, screen)
    ship = Ship(screen, ai_setting)
    bullets = Group()
    alians = Group()
    gf.create_fleet(ai_setting, screen, ship, alians)
    while True:
        gf.check_event(ai_setting, screen, stats, sb, play_button, ship,
                       alians, bullets)
        gf.screen(ai_setting, screen, stats, sb, ship, bullets, alians,
                  play_button)
        if stats.game_active:
            ship.update()
            gf.update_bullets(ai_setting, screen, stats, sb, ship, alians,
                              bullets)
            gf.update_alians(ai_setting, screen, stats, sb, ship, alians,
                             bullets)
        pygame.display.flip()
        gf.screen(ai_setting, screen, stats, sb, ship, bullets, alians,
                  play_button)
예제 #11
0
def run_game():
    pygame.init()
    c_settings = Settings()
    screen = pygame.display.set_mode(
        (c_settings.screen_width, c_settings.screen_height))
    pygame.display.set_caption("Catcher")
    # Создание экземпляра для хранения игровой статистики.
    stats = GameStats(c_settings)

    # Создание футболиста и мяча.
    footballer = Footballer(screen, c_settings)
    balls = Group()

    gf.create_ball(balls, screen, c_settings)

    while True:
        # Отслеживение событий клавиатуры.
        gf.check_event(footballer)

        if stats.game_active:
            # Передвижение футболиста.
            gf.update_footballer(footballer, balls)
            # Передвижение мяча.
            gf.update_ball(balls, footballer, screen, c_settings, stats)
            # Проверка позиции мяча.
            gf.check_position_ball(balls, screen, c_settings)
        # Обновление изображения на экране и отображение нового экрана.
        gf.update_screen(c_settings, screen, footballer, balls)
예제 #12
0
def run_sky():
    pygame.init()
    general = Set()
    screen = pygame.display.set_mode(general.size)
    air = Air(screen)
    pygame.display.set_caption('Blue Sky')
    while True:
        info.check_event()
        info.update(general, air, screen)
예제 #13
0
def run_game():
    pygame.init()
    #get start time
    start_time = pygame.time.get_ticks()
    settings = Settings()
    settings.mode = 'human'
    screen = pygame.display.set_mode((settings.screen_width,settings.screen_height))
    pygame.display.set_caption("Fill the bottle")
    conveyor_belt = gf.Conveyor_belt(screen,settings)
    tank = gf.Tank(screen,settings)
    #bottle = gf.Bottle(screen,conveyor_belt,tank,settings.color)
    #print(bottle)
    waterflow = Group()
    bottles = []
    scoreboard = gf.Scoreboard(screen,settings)
    game_state = GameStats(settings)
    timeline = gf.Timeline(screen,settings)
    while True:
        seconds = (pygame.time.get_ticks() - start_time) / 1000
        if seconds >= settings.time_limit:
        #if game_state.action_num >= settings.action_limit:
            print('Final score is %d'%sum(game_state.score_record[:]))
            if sum(game_state.score_record[:]) >= game_state.highest_score:
                game_state.highest_score = sum(game_state.score_record[:])
                print('New highest score reaches %d'%game_state.highest_score)
            #flag done and reward, that can be used in further training
            game_state.done = True
            game_state.reward = sum(game_state.score_record[:])
            #reset the game
            gf.reset(bottles,waterflow,game_state,tank,settings)
            game_state.round += 1
            print('New round!  round %d'%game_state.round)
            start_time = pygame.time.get_ticks()

        #update all components
        bottle = gf.add_bottle(screen,conveyor_belt,tank,settings.water_color,bottles,game_state)
        gf.check_event(bottle,screen,tank,waterflow,conveyor_belt,game_state,settings)
        gf.update_water(waterflow,conveyor_belt)
        timeline.update(game_state)
        #print('reward_fill is %f'%game_state.reward_fill)

        #show all components
        screen.fill(settings.bg_color)
        conveyor_belt.blitme()
        tank.blitme()
        scoreboard.show_score(game_state)
        timeline.draw()
        for bottle in bottles:
            bottle.update(settings.conveyor_speed)
            bottle.draw()
        for drop in waterflow.sprites():
            drop.draw(settings.water_color)


        pygame.display.flip()
예제 #14
0
def run_game():
    pygame.init()
    ai_setting = Settings()
    a = (ai_setting.screen_width, ai_setting.screen_height)
    screen = pygame.display.set_mode(a)
    pygame.display.set_caption("Alien Invasion")
    ship = Ship(screen)

    while True:
        gf.check_event()
        gf.update_screen(ai_setting, screen, ship)
예제 #15
0
def run_game():
    pygame.init()
    ai_setting = Settings()
    # screen = pygame.display.set_mode((1200, 800))
    screen = pygame.display.set_mode(
        (ai_setting.screen_width, ai_setting.screen_height))
    ship = Ship(screen)

    pygame.display.set_caption("打飞机")
    # bg_color = (230, 230, 230)
    while True:
        gf.check_event(ship)
        gf.update_screen(ai_setting, screen, ship)
예제 #16
0
def run_game():
    pygame.init()
    setting=Setting()
    screen=pygame.display.set_mode((setting.screen_w, setting.screen_h))
    pygame.display.set_caption("Alien War!")
    ship=Ship(screen)
    alien=Alien(screen,setting)
    bullets=Group()
    while True:
        game_f.check_event(ship,screen,setting,bullets)
        for bullet in bullets:
            bullet.bullet_move()
            if bullet.bullet_rect.top<=0:
                bullets.remove(bullet)
        game_f.screen_update(setting,screen,ship,bullets,alien)
def run_game():
    """ Game Run Function """
    screen = pygame.display.set_mode((1200, 600))
    pygame.display.set_caption("Rocket")

    ship = Ship(screen)
    bg_color = (33, 39, 122)

    while True:
        """ Main Loop """
        gf.check_event(ship)

        screen.fill(bg_color)
        ship.update()
        gf.update_screen(screen, ship)
예제 #18
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("Three body problem")

    stars = Group()
    vzs = Group()

    gf.create_star_fleet(stars, vzs, screen, ai_settings)

    while True:
        gf.check_event()

        gf.update_screen(ai_settings, screen, stars, vzs)
예제 #19
0
def run_game() -> object:
    pygame.init()
    # 创建屏幕
    ai_settings = Settings()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height), 0, 32)
    # 标题
    pygame.display.set_caption("Alien invasion")

    # 创建飞机
    ship = Ship(ai_settings, screen)
    print("1:", ship.rect)
    # 创建子弹
    bullets = Group()
    # 创建敌人
    aliens = Group()
    # 创建敌人群
    gf.create_fleet(ai_settings, screen, ship, aliens)
    # 创建button
    play_button = Button(ai_settings, screen, "Play")
    # 创建信息统计的实例
    stats = GameStats(ai_settings)
    # 创建记分牌
    sb = Scoreboard(ai_settings, screen, stats)

    while True:
        # 检查鼠标和键盘事件
        gf.check_event(ai_settings, screen, stats, play_button, ship, aliens,
                       bullets, sb)

        # 游戏状态
        if stats.game_active:
            # 更新飞船位置
            ship.updat()
            # 更新子弹位置
            gf.update_bullets(ai_settings, screen, ship, aliens, bullets, sb,
                              stats)
            # 更新敌人
            gf.update_aliens(ai_settings, stats, screen, ship, aliens, bullets,
                             sb)

        # 绘制屏幕
        gf.update_screen(ai_settings, screen, ship, aliens, bullets,
                         play_button, stats, sb)

        # 延时一下
        time.sleep(0.003)
def run_game():
    # pygame初始化
    pygame.init()
    ai_setting = Setting()
    screen = pygame.display.set_mode(ai_setting.window_size)

    gf.game_init(screen, ai_setting)
    ship = Ship(screen, ai_setting)
    bullets = Group()
    while True:
        # 监测鼠标键盘操作
        gf.check_event(screen, ai_setting, ship, bullets)
        # 更新飞船位置
        ship.update()
        gf.bullets_update(bullets)
        # 重绘屏幕
        gf.screen_update(screen, ai_setting, ship, bullets)
예제 #21
0
def game():
    pygame.init()
    setting = Setting()
    screen = pygame.display.set_mode(
        (setting.screen_width, setting.screen_height))
    snake_head = Snake_head(screen, setting)
    apple = Apple(screen, setting)
    tail = Tail(screen, setting)
    apple.get_rect(snake_head, tail)
    start_time = pygame.time.get_ticks()

    while gf.resume_game(setting, snake_head, tail):

        gf.check_event(snake_head, start_time)

        gf.update(screen, setting, snake_head, apple, tail)

        pygame.time.delay(100)
    print(tail.ate_apples_count)
예제 #22
0
def run_game():
    # 初始化游戏并创建屏幕对象
    pygame.init()

    # 使用Settings类
    ai_settings = Settings()

    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    pygame.display.set_caption("Fight Warriors")
    # 创建Play按钮
    play_button = Button(ai_settings, "Play", screen)

    # 创建游戏玩家
    player = Player(screen, ai_settings)

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

    # 创建敌人编组
    enemies = Group()
    # 创建敌人群
    gf.creat_fleet(ai_settings, screen, enemies, player)

    # 实例化游戏统计信息
    stats = GameStats(ai_settings)
    # 创建分数实例
    score_board = Scoreboard(ai_settings, screen, stats)

    # 开始游戏主循环
    while True:
        gf.check_event(player, ai_settings, screen, bullets, stats,
                       play_button, enemies, score_board)
        if stats.active_game:
            player.update()
            gf.update_bullets(bullets, enemies, ai_settings, screen, player,
                              stats, score_board)
            gf.update_enemies(enemies, ai_settings, player, stats, screen,
                              bullets, score_board)
        gf.update_screen(ai_settings, screen, player, bullets, enemies,
                         play_button, stats, score_board)
예제 #23
0
파일: main.py 프로젝트: Accelerator19/Mine
def run_game():
    pygame.init()
    settings = Settings()
    screen = pygame.display.set_mode((settings.screen_width,settings.screen_height))
    pygame.display.set_caption("外星人入侵")
    ship = Ship(screen)
    bullets = Group()
    aliens = Group()
    game_stats = Gamestat(settings)
    play_button = Button(screen,settings,"Play")
    score_broad = Score_broad(screen,settings)
    ship_life = Ship_life(screen,settings,game_stats)
    level = Level(screen,settings,game_stats)
    gf.create_aliens(screen,settings,aliens)
    while True:
        gf.check_event(screen,settings,ship,bullets,aliens,game_stats,play_button,ship_life)
        if game_stats.game_active:
            ship.update(settings)
            gf.update_bullet(screen,settings,bullets,aliens,game_stats,score_broad)
            gf.update_aliens(screen,settings,ship,bullets,aliens,game_stats,ship_life)
        gf.update_screen(screen,settings,ship,bullets,aliens,game_stats,play_button,score_broad,ship_life,level)
예제 #24
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按钮
    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()

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

    while True:
        gf.check_event(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, bullets,
                              aliens)
            gf.update_aliens(ai_settings, screen, stats, sb, ship, aliens,
                             bullets)

        gf.update_screen(ai_settings, screen, stats, sb, ship, aliens, bullets,
                         play_button)
예제 #25
0
def run_game():
    fps = 60
    pygame.init()
    win = Window()
    scr = pygame.display.set_mode(win.screen_size)
    clock = pygame.time.Clock()
    pygame.display.set_caption("COVID - 19 (SIMULATOR)")
    s = Settings(pun=None)
    humans = []
    for i in range(s.human_number - 1):
        humans.append(Human(win, scr))
    ill_human = Human(win, scr)
    ill_human.is_ill = True
    ill_humans = [ill_human]

    while True:
        gf.check_event()
        clock.tick(fps)
        gf.update_screen(win, scr, humans, ill_humans)
        for human in humans:
            if human.is_ill:
                humans.pop(humans.index(human))
                ill_humans.append(human)
예제 #26
0
def run_game():
    # 初始化游戏
    pygame.init()
    settings = Settings()
    screen = pygame.display.set_mode(
        (settings.bit[0], settings.bit[1] + settings.scoreboard_height))
    pygame.display.set_caption("Gluttonous Snake")
    pygame.mouse.set_visible(False)

    # 存储游戏信息的实例
    stats = Stats(settings)
    scoreboard = ScoreBoard(settings, screen, stats)
    info = Info(screen)

    snake_head = SnakeHead(settings, screen)
    snake_parts = Group()
    foods = Group()

    last_time = time.time()

    # 开始游戏主循环
    while True:
        gf.check_event(stats, snake_head, snake_parts, foods)

        if time.time(
        ) - last_time >= settings.interval and not stats.pause_game and stats.game_active:
            gf.update_snake(screen, stats, snake_head, snake_parts)
            gf.check_collision(settings, stats, snake_head, snake_parts, foods)
            gf.update_food(settings, stats, screen, snake_head, snake_parts,
                           foods)

            stats.high_score = max(stats.score, stats.high_score)
            last_time = time.time()
            stats.moved = False

        gf.draw_screen(settings, stats, screen, scoreboard, snake_head,
                       snake_parts, foods, info)
예제 #27
0
def run_game():
	pygame.init()

	# 导入设置参数
	my_settings = Settings()
	# 初始化屏幕并设置
	pygame.display.set_caption(my_settings.title)
	screen = pygame.display.set_mode((my_settings.screen_width, my_settings.screen_height))
	
	# 创建一个用于存储游戏统计信息的实例
	stats = GameStats(my_settings)
	
	# 创建一艘飞船
	ship = Ship(my_settings, screen)
	
    # 创建子弹组
	bullets = Group()

    # 创建初始外星人族群
	aliens = Group()
	gf.create_fleet(my_settings, screen, ship, aliens)

	# 创建Play按钮
	play_button = Button(my_settings, screen, "Play")

	# 创建记分牌
	sb = Scoreboard(my_settings, screen, stats)


	# 开始游戏的主循环
	while True:
		gf.check_event(my_settings, stats, screen, sb, ship, bullets, play_button)
		if stats.game_active:
			ship.update()
			gf.update_bullet(my_settings, stats, screen, sb, ship, aliens, bullets)
			gf.update_aliens(my_settings, stats, screen, sb, ship, aliens, bullets)
		gf.update_screen(my_settings, screen, stats, sb, ship, aliens, bullets, play_button)
예제 #28
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("打倒黑恶势力")
    play_button = Button(ai_settings,screen,"play !")
    stats = GameStats(ai_settings)
    ship = Ship(ai_settings,screen)
    bullets = Group()
    aliens = Group()
    gf.create_fleet(ai_settings,screen,aliens,ship)
    sb = Scoreboard(ai_settings,screen,stats)
    

    while True:
        gf.check_event(ai_settings,screen,ship,bullets,stats,play_button,aliens,sb)
        
        if stats.game_active:
            ship.update()
            gf.update_bullets(ai_settings,aliens,bullets,ship,screen,stats,sb)
            gf.update_aliens(aliens,ai_settings,ship,bullets,stats,screen,sb)
            
            #print(len(bullets))
        gf.update_screen(ai_settings,screen,ship,bullets,aliens,play_button,stats,sb)
예제 #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 Invansion")

    # 创建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()
    # 创建外星人群
    gf.create_fleet(ai_settings, screen, ship, aliens)
    """ 开始游戏的主循环 """
    while True:
        gf.check_event(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, screen, stats, sb, ship, aliens,
                             bullets)

        gf.update_screen(ai_settings, screen, stats, sb, ship, aliens, bullets,
                         play_button)
예제 #30
0
def run_game():
    pygame.init()
    c_settings = Settings()
    screen = pygame.display.set_mode(
        (c_settings.screen_width, c_settings.screen_height))
    pygame.display.set_caption("Catcher")

    # Создание футболиста и мяча.
    footballer = Footballer(screen, c_settings)
    footballers = Group()
    balls = Group()

    gf.create_ball(balls, screen, c_settings)
    gf.create_footboller(footballers, screen, c_settings)

    while True:
        # Отслеживение событий клавиатуры.
        gf.check_event(footballers)
        # Передвижение футболиста.
        gf.update_footballer(footballers, balls)
        gf.update_ball(balls, footballers, screen, c_settings)
        gf.check_position_ball(balls, screen, c_settings)
        # Обновление изображения на экране и отображение нового экрана.
        gf.update_screen(c_settings, screen, footballers, balls)