前言
在前面的文章中,我们已经对项目进行了简单的分析,并且已经编写好了基础的代码,接下来的工作就是进一步的分析游戏的业务功能,在基础代码之上,进行填充。
背景颜色
我们简单的创建窗口以后,除了命名外暂时没有做特殊处理,背景颜色也是黑色的一片。我们使用书籍中的背景颜色进行填充。
我们找到main
模块,将绘制屏幕的函数封装到gf
模块中,因为每次循环以后除了简单的更新窗口屏幕,我们还需要刷新飞船,外星人,子弹的位置。
封装屏幕更新函数update_screen
,填充背景色。
gf
模块代码如下
import sys
import pygame
def check_event():
--snip--
def update_screen(setting, screen):
"""绘制屏幕"""
# 填充背景色
screen.fill(setting.bg_color)
# 让最近绘制的屏幕可见
pygame.display.flip()
main
模块代码如下
import pygame
import alien_invasion.game_functions as gf
from alien_invasion.setting import Setting
def run_game():
"""启动游戏"""
# 初始化pygame
pygame.init()
# 定义一个系统设置对象
setting = Setting()
# 新建窗口
screen = pygame.display