alien_invasion.py

#import sys

import pygame

from settings import Settings

from ship import Ship

import game_functions as gf

from pygame.sprite import Group

from alien import Alien

from game_stats import GameStats as GS

def run_game():

    """初始化游戏并创建一个屏幕对象"""

    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")

    # 创建一个用于存储游戏统计信息的实例

    stats = GS(ai_settings)

    # 创建一艘飞船

    ship = Ship(ai_settings,screen)

    # 创建一个用于存储子弹的编组

    bullets = Group()

    # 创建一个外星人实例

    alien = Alien(ai_settings,screen)

    # 创建一个外星人编组

    aliens = Group()

    # 创建外星人群

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

    # 开始游戏的主循环

    while True:

        # 监控键盘和鼠标事件

        #gf.check_events(ship)

        gf.check_events(ai_settings,screen,ship,bullets)

        ship.update()

        bullets.update()

        gf.update_bullets(ai_settings,screen,ship,aliens,bullets)

        gf.update_aliens(ai_settings,stats,screen,ship,aliens,bullets)

        # 每次循环时都重绘屏幕

        gf.update_screen(ai_settings, screen, ship,aliens,bullets)

run_game()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值