系列文章目录
第一章:武装飞船
01:创建Pygame窗口以及响应用户输入
02:创建设置类Setting()
一、前期准备
1.语言版本
Python3.9.0
2.编译器
Pycharm2022
3.下载Pygame
点击下方链接查看B站下载教程
如何在 Windows 给 Python 安装 Pygame 模块(含Pycharm安装模块方法)
1、点击文件后找到设置并点击
2、找到项目:下的Python解释器并点击
3、点击+号搜索pygame并安装软件包
二、代码及演示
1.创建Pygame窗口以及响应用户输入
创建文件:alien_invasion.py
点击查看代码
#渗透小红帽python的学习之路
#外星人入侵小游戏
#创建pygame窗口以及响应用户输入
import sys
# 模块sys用来退出游戏
import pygame
def run_game():
pygame.init() #初始化屏屏幕对象
screen = pygame.display.set_mode((1200, 800))#创建显示窗口
pygame.display.set_caption("Alien Invasion")
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()#让最近绘制的屏幕可见
run_game()
2.创建设置类Setting()
将关于小游戏的所有设置都存储在设置类中,方便修改!!!
A.修改文件:alien_invasion.py
点击查看代码
import sys
# 模块sys用来退出游戏
import pygame
from settings import Setting
#导入刚创建的设置类
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")
#开始游戏主循环
while True:
for event in pygame.event.get():#监听键盘和鼠标事件
if event.type == pygame.QUIT:
sys.exit()
screen.fill(ai_settings.bg_color)#每次循环都会重绘屏幕
pygame.display.flip()#让最近绘制的屏幕可见
run_game()
B.在与文件:alien_invasion.py同一文件夹下创建
文件:settings.py
点击查看代码
#渗透小红帽python的学习之路
#外星人入侵小游戏
#创建设置类Setting()
#存储外星人入侵小游戏的所有设置的类
class Setting():
def __init__(self): #__init__ 注意是两个短下划线
# 屏幕设置
self.screen_width = 1200
self.screen_height = 800
self.bg_color = (230, 230, 230)
3.运行效果
三、学习笔记
1.pygame.init() #初始化屏屏幕对象
2.screen = pygame.display.set_mode((1200, 800))创建一个名为screen的窗口 ,对象screen是一个表面。在Pygame中,surface是屏幕的一部分,用于显示游戏元素。
3.display.set_mode返回surface是游戏窗口
4.pygame.event.get()使用方法监听所有键盘和鼠标事件,促使for循环的进行
5.pygame.QUIT和sys.exit()当玩家点击窗口的关闭按钮时,将检测pygame.QUIT事件,则调用sys.exit()来退出游戏。
6.pygame.display.flip()每次执行while循环时都会绘制一个空屏幕,并擦去旧屏幕,使得新绘制的屏幕可见。这样可以实现不断更新屏幕显示元素的新位置
7.将关于小游戏的所有设置都存储在设置类中,方便修改!!!
四、补充知识
在Pygame中,颜色是以RGB值指定的。这种颜色由红色、绿色和蓝色值组成,其中每个值的可能取值范围都是0~255。颜色值(255, 0, 0)表示红色,(0, 255, 0)表示绿色,而(0, 0, 255)表示蓝色。通过组合不同的RGB值,可创建1600万种颜色。在颜色值(230, 230, 230)中,红色、绿色和蓝色的量相同,它生成一种浅灰色。我们将这种颜色赋给了self.bg_color。
调用方法fill()用这种背景色填充屏幕。方法fill()用于处理surface,只接受一个实参:一种颜色。
2022-08-18 20:05:58 星期四