相信大家对八音符都不陌生,就和显示中的音乐喷泉一个原理,声音越大水就越高,到了手机上就成了控制人物进行移动
原版介绍
相信很多人对八音符这款游戏并不陌生吧,其玩法是利用声音控制一个小黑球不断前进,大概是长这样子的吧
Step1 定义猴子类:
既然游戏的主角是猴子,那我们总得单独定义一个类来体现一下主角吧?
利用cocos2d模块来定义主角类是一件非常轻松的事情。你只需要继承sprites类,然后告诉sprites类需要执行什么操作即可。
根据八音符的游戏规则,我们赋予猴子跳跃、下降和静止的能力,同时,我们规定猴子在空中时无法进行跳跃。具体代码如下:
Step2 定义block类:
当然,先需要有站立的地方,不可能是个飞天神猴吧。
地面刚开始的时候先得有一段长点的平地缓冲一下,让玩家先试试自己的嗓音,然后再随机生成跳跃块,让玩家展示自己的歌喉。代码如下:
Step3 实现游戏主循环:
落地有了就准备开始我们的游戏了吧。
此时我们需要继承ColorLayer类来实现游戏主循环。首先,我们定义声控条类来代替我们“听”这个嗓音,代码如下:
然后就是实例化猴子类和block类,其中,block类将被集中处理。代码如下:
对了,只有输入了声音才能控制我们的猴子不停地运动,代码如下:
根据麦克风接收到的声音的音量来控制声控条的长短以及猴子的动作。这里,我们通过block块的整体后移来实现猴子的前进效果。
当然,我们也需要加入必要的碰撞检测程序,不然猴子一登场就陷入沼泽一样的地面中了。并且我们规定当猴子掉入“沟壑”后游戏重置。
代码如下:
游戏效果
效果如下: