本外星人入侵遊戲包括一個主運行程序(alien_invasion.py)和八個模塊。
一、主運行程序(alien_invasion.py)
1、創建alien_invasion.py(import sys和import pygame)
2、方法run_game()
初始化遊戲並創建一個屏幕對象(是該項目的主程序入口)
while True :開始遊戲主循環 event :監視鍵盤和鼠標事件
pygame.display.flip() :讓繪製的屏幕可見
主要代碼
從主運行程序中,導入其它八個模塊
import sys
import pygame
from settings import Settings
from game_stats import GameStats
from ship import Ship
import game_functions as gf
from pygame.sprite import Group
from alien import Alien
from button import Button
from scoreboard import Scoreboard
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)
#設置背景顏色
#bg_color = (230,230,230)
#創建一個外星人
alien = Alien(ai_settings,screen)
#開始遊戲的主循環
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.update_screen(ai_settings,screen,stats,sb,ship,aliens,bullets,play_button)
run_game()
點擊鏈接 https://blog.csdn.net/ljt101222/article/details/81252399 進入Python外星人入侵完整代碼和註釋(二)