第12章 · 武装飞船
项目1外星人入侵第1阶段:安装Pygame、创建游戏窗口、添加飞船并实现驾驶与射击。
知识点讲解
Pygame与游戏循环
外星人入侵项目基于Pygame构建。首先创建Pygame窗口并设置背景色,核心是主循环——不断监听事件、更新屏幕:
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
screen.fill(bg_color)
pygame.display.flip()
游戏中的所有更新都发生在这个循环内,flip() 负责刷新画面。
飞船与射击
将飞船表示为Ship类,加载飞船图像并控制其位置;通过监听键盘事件(KEYDOWN/KEYUP)实现左右移动,按住按键持续移动、松开停止。射击功能在飞船顶部创建子弹对象,子弹不断向上移动直至飞出屏幕后被删除。
代码示例
Pygame游戏循环
演示Pygame窗口创建与主循环。
import sys
import pygame
pygame.init()
screen = pygame.display.set_mode((1200, 800))
pygame.display.set_caption("外星人入侵")
bg_color = (230, 230, 230)
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
screen.fill(bg_color)
pygame.display.flip()