超级玛丽单机版下载(超级玛丽单机版下载中文版)
时间:2022-04-08 13:17:45
小编:头条科普
阅读:
编写一个经典游戏超级玛丽,如果用其他语言可能要上千行代码,而Python简洁的语法和强大的扩展库,使用Python最少只需两百多行就可完成,零基础都可以完成。最后写成的效果如下图:
python开发超级玛丽游戏使用的扩展库是 Pygame Zero(简称Pgzero) 安装:pIP install pgzero
下面的几个步骤操作,轻松完成超级玛丽python开发
1、建立游戏场景
建立游戏窗口只需两行代码:
import pgzrun
pgzrun.go()
在Python自带的IDLE编辑器中输入上述代码,运行便可以看到一个游戏窗口
用下面两行代码可以调整一下窗口大小
import pgzrun
HEIGHT=640
WIDTH=1024
pgzrun.go()
为窗口设置一个背景颜色,可以在Pgzero提供的draw()函数中编写代码:
def draw():screen.fill((148, 146, 255))
上述代码用RGB颜色值(148, 146, 255)为游戏窗口生成了一个背景色,并自动显示出来,效果如下:
接下来定义一个文本文件,把游戏场景中各种物体的位置用字母记录下来:
然后在程序中编写代码来读取文件,在相应字符的位置处生成物体,并将生成的物体全部加入到列表objs中。
最后在draw()函数中加入显示物体的代码即可:
def draw():screen.fill((148, 146, 255))for obj in objs:obj.draw()
场景的最终显示效果如下:
2、创建游戏角色
Pgzero中生成一个游戏角色十分简单,只需一行代码即可:
mario=Actor("smario.png",(200,HEIGHT-120))
Actor类是Pgzero提供的角色类,调用该类的构造方法并传入角色图片和位置便可生成一个角色对象,同时在draw()函数中显示该角色即可。修改后的draw()函数如下:
def draw():screen.fill((148, 146, 255))for obj in objs:obj.draw()mario.draw()
现在看看效果:
3、场景与角色的交互
玛丽便能站在地面上,而且可以顶砖块、吃蘑菇、捡金币、踩怪物等等。
以吃金币为例,我们可以编写如下代码:
class Coin(Actor):
def react(self):
if mario.colliderect(self):
sounds.coin.play()
objs.remove(self)
mario.points=mario.points+1
我们首先定义了一个金币类Coin,它继承自Actor类。然后在其中定义了react()方法,该方法判断玛丽是否“吃”到了金币,如果吃到则先播放一个音效,接着将金币对象从objs列表中移除,最后为玛丽增加一个游戏积分。
可以看到,Pgzero为我们提供了非常便捷的API来实现游戏基础功能,比如判断玛丽是否吃到金币,这实际上是个碰撞检测问题,只需调用colliderect()方法即可,而不需要手动编制大量代码。同时播放声音也只用一行代码就可搞定。
通过以上3个步骤,一款超级玛丽游戏就开发成功了,最终运行效果如下:
python开发超级玛丽的源码下载链接:
https://www.aliyundrive.com/s/8uDL2tA3GyY
更多详细的开发过程可以参考《零基础入门Python游戏》一书,该书第7章《超级马里奥》,
本书将从零开始带领读者上手3个独立的Python小游戏的开发过程,包括《飞机大战》《俄罗斯方块》《超级马里奥》。这些游戏简单易学,可以帮助读者通过编写游戏的方式提高Python编程能力,极具趣味性,让朋友们边玩边学!
最后,如果想要用python开发出更多有趣的游戏,全面系统学习Pygame Zero可以参考《趣学Python游戏编程》一书,
该书通过十个经典游戏案例,深入浅出地介绍了游戏编程的基本原理,以及Pygame Zero的具体使用方法。《趣学python编程》语言轻松,通俗易懂,讲解由浅入深,力求将读者阅读和学习的难度降到最低。任何对计算机编程有兴趣的人或者首次接触编程的人,不论孩子还是成人,都可以通过阅读本书来学习python编程。
以上从python的一个经典小游戏开始,介绍了python零基础开发游戏的步骤,并 介绍了两本关于python游戏开发的书,可以给孩子或者正在学习编程的学生使用,当然,如果是高龄人士,也可以用来培养一个爱好,没事编写一些程序养生一下,
感谢大家的观看,我要去练习python开发案例进行养生,陶冶情操去了,
本文标签:
-
三国志逐鹿天下_顶配三国手游《乱世逐鹿》明日终测 马伯庸开直播论英雄三国志逐鹿天下内容由小猪下载网提供,更多游戏攻略查看三国志逐鹿天下敬请关注小猪下载网。 乱世起,群雄出,招武将,战三国!《乱世逐鹿》将于明日(4月16日)开启终极测试!在纷时间:2022-04-22
-
火影忍者疾风传国语版(火影忍者疾风传国语版百度网盘)很久没有更新,这期说一下火影新世代博人传的人物名字翻译对比。当然,我还是比较想吐槽一下博人传,疾风传人物已经被削弱到不能再弱了,特别是佐助,动不动就没有查克拉,连我们最尊敬时间:2022-04-22
-
火影忍者羁绊54(火影忍者羁绊5.6隐藏英雄密码)注:本攻略以 PS4 版为例,Xbox One / PC 版可灵活参考《古墓丽影 暗影》本体共有64个奖杯,包括1白金杯、1金杯、2银杯、60铜杯。此次游戏本体没有任何联机奖杯,相比前作白金难度时间:2022-04-22
-
火影忍者羁绊32(火影忍者羁绊3.1B攻略流程)1989年3月20日下午,6岁半的罗兴勇在放学回家途中被人拐走。这一别,就是32年……四川德阳市旌阳区的李大全、谢文玉夫妇,走上了艰难的寻子之路。夫妻俩一直没搬家,担心儿子回来找时间:2022-04-22
-
火影忍者官方网站(火影忍者官方网站手游)由斗鱼发起的“火影忍者TOP1短视频素材征集”活动火爆进行中,只要你觉得有料有看点,就可以来投稿,优秀作者更可获得千元现金奖励!一飞冲天的平台,丰厚诱人的奖励,你是否也怦然心动时间:2022-04-22
超级玛丽
- 类型:动作冒险
- 语言:简中
- 大小: 18.92MB
- 版本: 4.6.4
- 星级:
热门阅读
- 暗黑3魔盒(暗黑3魔盒使用攻略)
阅读:3614
- dnf五一(dnf五一套2022)
阅读:2266
- 艾尔登法环摩恩城支线攻略 老头环摩恩城主女儿支线任务
阅读:2219
- 微博不小心点了催更怎么取消(视频催更怎么关)
阅读:1931
- 斗罗大陆小舞篇破解版(斗罗大陆小舞篇破解版安卓)
阅读:1647