还在啃书本学python吗?
为什么不试试用有趣的小游戏来学编程?自己开发的游戏,既能活学活用python,又能找回学习的自信。
下面我带大家开发一个Python小游戏,这是我在TONOW上学到的,还有所有的源码和文件,直接就可以拿!
首先,我们要先准备几个开发工具。
Python版本:3.6.4
需要的相应模块:
cocos2d模块;
pyaudio模块;
包括其他的python自带模块
然后搭建环境,pip安装需要的相关模块。
简单介绍游戏(完整源码和教程在底部)
今天开发的这款游戏,名叫八音符,也就是利用声音控制带辫子的小黑球不断前进,就是这样的:
今天主要是做一个低配版的,把用声音控制小黑球的功能实现。
第一步:
用cocos2d模块定义主角类,主角也就是小黑球,你只需继承sprites类,然后告诉sprites类需要执行什么操作即可。
根据八音符的游戏规则,我们赋予小黑球跳跃、下降和静止的能力,同时,我们规定小黑球在空中时无法进行跳跃。具体代码如下:
第二步:
定义block类,主角小黑球肯定需要有站的地方,对于地面的话,刚开始的时候先需要一段长点的平地缓冲一下,让玩家试试自己的嗓音,然后开始随机生成跳跃块,让玩家展示自己的歌喉,这是具体代码:
第三步:
这一步主要是需要继承ColorLayer类来实现游戏主循环,首先,我们定义声控条类来“暗中观察”我们的嗓音,代码如下:
然后就是实例化小黑球类和block类,其中,block类将被放置进容器以方便整体处理。代码如下:
还要记住,只有当输入了声音,小黑球才能不停的运动,代码如下:
最后,我们需要告诉程序游戏规则,那就是根据麦克风接收到的声音的音量来控制声控条的长短以及小黑球的动作。
这里,我们通过block块的整体后移来实现皮卡丘的前进效果。
当然,我们也需要加入必要的碰撞检测程序,不然小黑球一登场就陷入沼泽一样的地面中了。并且我们规定当小黑球掉入“沟壑”后游戏重置。代码如下:
到这里,这个游戏和低配版本需要的功能就已经完成了。
以游戏的方式学python,真的会很有意思!