不少小伙伴肯定玩过《别踩白块》和《节奏大师》这些音乐节奏类益智游戏,玩家在游戏中伴随音乐节奏敲击或连击下落的音符演奏出完美的旋律,获得畅快的游戏体验。游戏中不仅有音乐带来的听觉享受,更有“演奏”音乐带来的畅快感受。原版的节奏游戏中,玩家可以随着音乐节奏用“点”“按”“滑”等多种操作结合弹奏出美妙的音乐,今天我们也通过Scratch编写一款简易版本的《节奏大师》游戏,也纪念一下停运的《节奏大师》(图1)。
当然受到Scratch程序的能力所限,这里将游戏做了简单化的处理。用上下左右箭头来代表《节奏大师》的方块,原本需要左右手移动操作,简化后玩家通过单手按下WSAD键来控制。
游戏中小陈老师只绘制了三条轨道,你可以在源程序的基础上添加更多轨道,轨道数量越多难度越大。
在屏幕下方有一条判定线,要求玩家要在箭头通过判定线时接住下落的箭头,获得五分;如果箭头超出了判定线碰到了屏幕边缘,那么扣五分。
轨道绘制在舞台背景中,游戏角色只有判定线和箭头。箭头角色需要在造型中绘制四种不同方向不同颜色的箭头,并通过编号区分。设置两个变量“分值”“速度”用于统计与记录。
游戏开始,将分值设置为0,并且将箭头进行隐藏,根据轨道的数量控制箭头起始位置与间隔位置確定X的计算公式,间隔位置视箭头大小和轨道间距调整。这里我设置了每隔0.5秒下落(克隆一次),玩家可以根据玩游戏的手感调整箭头下降的速度(图2)。
产生1-4之间的随机数确定箭头造型,显示箭头。
游戏判定部分,我们需要针对上下左右箭头做四个判断。以左箭头为例,要比对键盘按键是a键,造型编号为1,且在按下键盘时碰到了判定线,如果符合要求玩家加五分。箭头虚化特效增加20循环5次,形成一种消失的效果。当箭头超出判定线后碰到舞台边缘,则表示玩家未接住箭头则扣五分,还可以增加如分值低到一定的程度直接结束游戏的处罚。其他三个方向代码类似,不再赘述(图3)。
箭头降落的速度会随着分值的增加越来越快,默认降落速度是5(图4)。
我们已经完成游戏的基本功能,在调试通过后,加入游戏背景音乐。创建一个链表来存储音符,新建变量每按中一个箭头就将这个变量增加1,通过音乐模块弹奏链表里对应变量编号的音符,就可以实现真正的演奏了。偷懒的话直接添加一条音乐片段循环播放即可。
游戏体验感还是非常不错的,后期大家还可以在此基础上添加更多的小功能,比如说增加一些金币或者红包降落或者加速冲刺等功能,期待大家提出更多的想法。