开始标示处理逻辑
注意当角色被点击的处理逻辑,我们只让它在展示的是开始标示的时候,执行一些指令,其他情况不做任何处理。这里有一个小动画,角色会一遍向上移动,一遍慢慢变透明,效果就是向上渐渐消失了。在角色隐藏之后,广播【游戏开始】消息,表示游戏正式开始。
字母角色需要响应【游戏开始】的消息,选中它,添加逻辑脚本。
游戏开始消息响应逻辑
从脚本中可以看到,游戏开始的时候分数是0,有3条命。打字游戏需要很多字母,使用克隆指令再合适不过了。我们把“本体”隐藏了以后,定时生成克隆对象供游戏使用。要克隆多少对象,又要克隆到什么时候呢?回答是:一直克隆,知道所有生命都用完,游戏结束。广播出【游戏结束】的消息。
当克隆体生成之后,就需要把它显示出来,并实现一个从上向下掉落的动画,在掉落的过程中去响应我们的键盘点击。需要添加两段逻辑,一段是下落逻辑,一段是响应键盘的逻辑。下落逻辑看下图。
字母掉落动画逻辑
首先让克隆体移动到舞台上方的一个随机的水平位置,这样就会如同下雪一样散落下来,然后以某个速度下落,如果碰到了舞台的边缘还没有敲击对应的按键,那就是这歌字母“逃逸成功”了,“吃”掉了你的一条生命,并把自己给“干掉”了,在即将消失的时候,还播放了一个声音来给你提示。
看看处理键盘点击的事件处理,这个事件的处理也是克隆体生成之后。只要这个克隆体还没有把自己给“干掉”,就会一直轮询是否有对应的按键被按下,如果有,就说明字母被按键命中,分数增加,同时字母的克隆体消失。我们使用了模块化编程,新建了一个积木用来处理键盘事件。
键盘响应逻辑
对于新积木的使用,见上图右侧,为了讲解方便,这里仅使用少数几个的按键事件处理判断来做例子,实际游戏中需要对所有字母进行处理。新积木需要两个参数来调用,第一个是字母当前的造型编号,第二个是对按键的判断。
还记得我们上面曾经广播了【游戏结束】的消息了吗?当生命用完的时候,会广播这条消息,那么结束的标示就需要响应这个消息来告诉你游戏结束了。选中标示角色,添加逻辑脚本。