admin管理员组文章数量:1794759
《Python游戏趣味编程》 第5章 飞翔的小鸟
5 飞翔的小鸟 Python游戏开发
图书简介可以看这里:
童晶:《Python游戏趣味编程》新书上架了本章我们将编写飞翔的小鸟游戏。小鸟会在空中下落,鼠标点击后向上飞行一段距离;随机位置的障碍物从右向左移动,玩家需控制小鸟穿过障碍物间的空隙得分。
首先我们学习图片的导入和显示,实现背景、小鸟、障碍物的显示;然后学习控制小鸟的下落与上升、障碍物的移动;最后学习游戏失败的判定与游戏重置、得分的显示。
本章案例最终代码一共58行,代码参看:配套资源\\第5章\\5-8.py,视频效果参看:配套资源\\第5章\\飞翔的小鸟.mp4。
import pgzrun # 导入游戏库 import random # 导入随机库 WIDTH = 350 # 设置窗口的宽度 HEIGHT = 600 # 设置窗口的高度 background = Actor('background') # 导入背景图片 bird = Actor('bird') # 导入小鸟图片 bird.x = 50 # 设置小鸟的x坐标 bird.y = HEIGHT/2 # 设置小鸟的y坐标 bar_up = Actor('bar_up') # 导入障碍物上半部分图片 bar_up.x = 300 # 设置障碍物上半部分的x坐标 bar_up.y = 0 # 设置障碍物上半部分的y坐标 bar_down = Actor('bar_down') # 导入障碍物下半部分图片 bar_down.x = 300 # 设置障碍物下半部分的x坐标 bar_down.y = 600 # 设置障碍物下半部分的y坐标 score = 0 # 游戏得分 speed = 1 # 游戏速度,即障碍物向左移动的速度 def draw(): # 绘制模块,每帧重复执行 background.draw() # 绘制背景 bar_up.draw() # 绘制障碍物上半部分 bar_down.draw() # 绘制障碍物下半部分 bird.draw() # 绘制小鸟 screen.draw.text(str(score), (30, 30), fontsize=50, color='green') def update(): # 更新模块,每帧重复操作 global score,speed bird.y = bird.y + 2 # 小鸟y坐标增加,即缓慢下落 bar_up.x = bar_up.x - speed # 障碍物上半部分缓慢向左移动 bar_down.x = bar_down.x - speed # 障碍物上半部分缓慢向左移动 # 当障碍物移动到最左边时,可以让其在右边重新出现 if bar_up.x < 0: bar_up.x = WIDTH bar_down.x = WIDTH bar_up.y = random.randint(-200, 200) # 障碍物上半部分上下随机出现 bar_down.y = 600 + bar_up.y # 上、下部分的障碍物中间空挡大小固定 score = score + 1 # 得分加1 if (score % 5 == 0): # 如果得分增加了5分,就让游戏速度增加 speed = speed + 1 # 如果小鸟碰到障碍物上半部分或下半部分,游戏失败 if bird.colliderect(bar_up) or bird.colliderect(bar_down) or bird.y < 0 or bird.y > HEIGHT: print('游戏失败') # 把得分清零、速度设为1,小鸟、障碍物的位置重新归位 score = 0 speed = 1 bird.x = 50 # 设置小鸟的x坐标 bird.y = HEIGHT/2 # 设置小鸟的y坐标 bar_up.x = WIDTH # 设置障碍物上半部分的x坐标 bar_up.y = 0 # 设置障碍物上半部分的y坐标 bar_down.x = WIDTH # 设置障碍物下半部分的x坐标 bar_down.y = 600 # 设置障碍物下半部分的y坐标 def on_mouse_down(): # 当鼠标点击时运行 bird.y = bird.y - 100 # 小鸟y坐标减少,即上升一段距离 pgzrun.go() # 开始执行游戏分步骤代码、图片素材、讲解视频可以从异步社区下载:
www.epubit/bookDetails?id=UB72096d97d6149分步骤代码也可以直接从这里下载:
联想Filez
这一章主要讲解了图片的导入与显示、位置的设定、碰撞检测,以及文字的显示等功能,学习了数据的类型转换、整除与取余运算符等知识点。应用变量、if语句、随机等基础语法,没有使用for循环、列表,实现了飞翔的小鸟游戏。
学习了中学物理的读者,可以尝试将小鸟设定为受重力作用下落,实现更自然的游戏效果。读者也可以参考本章的开发思路,尝试设计并分步骤实现一个跳跃躲避障碍物的游戏。
版权声明:本文标题:《Python游戏趣味编程》 第5章 飞翔的小鸟 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686836827a108562.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论