上传文件至 ''

This commit is contained in:
203310105 2021-06-20 20:10:25 +08:00
parent caaca89de0
commit 137b75b07f
1 changed files with 46 additions and 0 deletions

46
alien_invasion(1).py Normal file
View File

@ -0,0 +1,46 @@
#胡小小Python学习之路
#外星人入侵小游戏
# alien_invasion.py
import sys
# 模块sys用来退出游戏
import pygame
from settings import Setting
# 导入刚创建的设置类
from ship import Ship
# 导入管理飞船行为的类
import game_functions as gf
from pygame.sprite import Group
#Group类类似于列表
from alien import Alien
from game_stats import GameStats
from button import Button
from scoreboard import Scoreboard
def run_game():
pygame.init() #初始化屏幕对象
ai_settings = Setting()
# 创建Setting类的实例并存储在ai_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")#创建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_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,screen,stats,sb,ship,aliens,bullets)
gf.update_screen(ai_settings,screen,stats,sb,ship, aliens, bullets,play_button)
run_game()