繼續(xù)編寫下去時我們發(fā)現(xiàn)一個應(yīng)該被解決的問題——每當(dāng)我們要添加設(shè)置時,就在代碼出隨處添加,到時候維護代碼時很不方便。
所以我們添加了一個模塊專門用來存放各種設(shè)置,命名為settings.py,其中有個settings類.
class Settings(): """存儲《外星人入侵》的所有設(shè)置的類""" def __init__(self): """初始化游戲的設(shè)置""" # 屏幕設(shè)置 self.screen_width = 600 self.screen_height = 400 self.bg_color = (230, 230, 230)
代碼隨之改成,
--snip-- import pygame from settings import Settings def run_game(): """初始化游戲并創(chuàng)建一個屏幕對象""" # 初始化pygame pygame.init() # 為Settings創(chuàng)建一個實例對象 ai_settings = Settings() # 創(chuàng)建一個顯示窗口,寬600像素,高400像素 screen = pygame.display.set_mode((ai_settings.screen_width, ai_settings.screen_height)) # 顯示窗口的標(biāo)題為'Alien Invasion' pygame.display.set_caption('Alien Invasion') # 開始游戲的主循環(huán) while True: --snip-- # 每次循環(huán)都重新繪制屏幕 screen.fill(ai_settings.bg_color) # 讓最近繪制的屏幕可見 pygame.display.flip() run_game()
效果與之前的無異。
浙公網(wǎng)安備 33010602011771號