欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

大四学长教你利用Python写一款超级玛丽,零基础也能学会,超级装逼

程序员文章站 2022-03-25 17:54:03
PS注意:很多人学Python过程中会遇到各种烦恼问题,没有人解答容易放弃。为此小编建了个Python全栈免费答疑.裙 :七衣衣九七七巴而五(数字的谐音)转换下可以找到了,不懂的问题有老司机解决里面还有最新Python实战教程免非下,,一起相互监督共同进步! 1.游戏的入口 作者的功力还是蛮深的,整 ......

 

 
大四学长教你利用Python写一款超级玛丽,零基础也能学会,超级装逼
 
大四学长教你利用Python写一款超级玛丽,零基础也能学会,超级装逼

ps注意:很多人学python过程中会遇到各种烦恼问题,没有人解答容易放弃。为此小编建了个python全栈免费答疑.裙 :七衣衣九七七巴而五(数字的谐音)转换下可以找到了,不懂的问题有老司机解决里面还有最新python实战教程免非下,,一起相互监督共同进步!

1.游戏的入口

作者的功力还是蛮深的,整个代码的框架很清晰。看一下它的启动函数:

 
大四学长教你利用Python写一款超级玛丽,零基础也能学会,超级装逼

 

 
大四学长教你利用Python写一款超级玛丽,零基础也能学会,超级装逼

第一个from 引入了setup和tools, 主要是把一些初始化的工作在setup里面全部做完,读取一些配置文件和图片,声音到内存里面。

第二个from 主要显示主菜单和主界面。

第三个from主要是引入了一些常量的配置,比如颜色红色,黑色,白色,超级玛丽,蘑菇,砖块,硬币的一些状态常量。

run_it 是整个游戏的核心类,是用来做整个游戏的控制中心。

作者设计了一个状态机,里面设计了5个主要的场景:主菜单,主界面,超时的界面,游戏结束的节目还有循环运行的界面

最后运行run_it.main(),调用控制类里面的一个死循环函数,不断监听外部的event,来更新画布,整个的背景其实是循环的。

 

 
大四学长教你利用Python写一款超级玛丽,零基础也能学会,超级装逼

 

 2.游戏的框架

整个游戏分resource和data两个部分:

resource部分主要是存放一些字体啊,图片啊,音乐和声音。

data部分主要分组件compents和逻辑处理control部分,这里的逻辑处理部分,作者非常巧妙的用状态机来设计。

 
大四学长教你利用Python写一款超级玛丽,零基础也能学会,超级装逼
 
大四学长教你利用Python写一款超级玛丽,零基础也能学会,超级装逼

整个游戏我玩了几把还是很不错的,画片还是蛮漂亮的,操作也很流畅,尤其是超级玛丽在空中腾飞的姿势还是很帅的,刷刷刷的顶到云上!

目前只能支持一个玩家玩,当然唯一美中不足的是这款游戏仅在py2.x上流畅运行。大家可以去下载一下源码,玩一玩然后读一读源码,源码写的非常通熟易懂,结构很清晰,学习一下高手是如何写代码的,相信对大家的功力增长大有裨益。注意:很多人学python过程中会遇到各种烦恼问题,没有人解答容易放弃。为此小编建了个python全栈免费答疑.裙 :七衣衣九七七巴而五(数字的谐音)转换下可以找到了,不懂的问题有老司机解决里面还有最新python实战教程免非下,,一起相互监督共同进步!

本文的文字及图片来源于网络加上自己的想法,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。