Python小游戏——外星人入侵(保姆级教程)第一章 05
2022/8/22 14:27:08
本文主要是介绍Python小游戏——外星人入侵(保姆级教程)第一章 05,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
系列文章目录
第一章:武装飞船
05:重构:模块game_functions
一、重构
在大型项目中,经常需要在添加新代码前重构既有代码。重构旨在简化既有代码的结构,使其更容易扩展。在本节中,我们将创建一个名为game_functions的新模块,它将存储大量让游戏《外星人入侵》运行的函数。通过创建模块game_functions,可避免alien_invasion.py太长,并使其逻辑更容易理解。
在添加新代码前重构现有代码,可以简化代码结构,使其更容易扩展!!!
二、代码及演示
(笔记在代码的注释中!!!)
1.模块game_functions
在与文件:alien_invasion.py同一文件夹下创建
文件game_functions.py
点击查看代码
#渗透小红帽python的学习之路 #外星人入侵小游戏 #game_functions.py #存储让游戏运行的函数 import sys import pygame def check_events(): #响应按键和鼠标事件 for event in pygame.event.get(): # 监听键盘和鼠标事件 if event.type == pygame.QUIT: sys.exit() #修改alien_invasion.py,使其导入game_functions #并将事件循环替换为对函数check_events()的调用 def update_screen(ai_settings,screen,ship): # 将更新屏幕的代码移到此处 screen.fill(ai_settings.bg_color) # 每次循环都会重绘屏幕 ship.blitme() # 每次循环时重新绘制飞船 pygame.display.flip() # 让最近绘制的屏幕可见 # 然后修改alien_invasion.py
2.修改alien_invasion
修改文件:alien_invasion.py
点击查看代码
#渗透小红帽python的学习之路 #外星人入侵小游戏 #创建pygame窗口以及响应用户输入 import sys #模块sys用来退出游戏 import pygame from settings import Setting #导入刚创建的设置类 from ship import Ship #导入管理飞船行为的类 import game_functions as gf 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") ship = Ship(screen) #绘制一艘飞船 #开始游戏主循环 while True: gf.check_events() gf.update_screen(ai_settings,screen,ship) run_game() # 代码重构完成
3.运行效果
有什么不懂的地方在评论区留言哦!希望我的文章能对你有所帮助,如果喜欢我的文章,请点赞收藏并关注!你的认可是对我创作最大的鼓励!
2022-08-21 12:30:32 星期日
这篇关于Python小游戏——外星人入侵(保姆级教程)第一章 05的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器
- 2024-11-16四种数据科学Web界面框架快速对比:Rio、Reflex、Streamlit和Plotly Dash
- 2024-11-14获取参数学习:Python编程入门教程
- 2024-11-14Python编程基础入门