合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
* * * * * * * * * * ## 复习上节课学习的内容 Hi,小朋友们!我是阿达老师。我们在前面的课程中完成了《灵药战争》中小怪物的实现效果,今天我们继续学习,完成神秘灵药的代码,我们开始吧 ## 游戏背景介绍 小阿达,来到了神秘的异次完空间,那里有可以提升智力的灵药,为了能够变得更聪明,小阿达决定闯闯这个异次元空间,与怪物大战三百回合,收集足够多的灵药 我们移动鼠标,不仅要去收集灵药,又要避开逼近过来怪物侵袭,当灵药和怪物在舞台区漫游的时候,它们会不断的通过克隆的方式来扩大自已阵营的规模,我们收集到一颗灵药可以加1分,但被小怪物攻击一次之后就会减3分,分数超过20我们就顺利过关,分数下降到0以下,就游戏失败了,要重新来过,这个规则小朋友们可以自已设置,用来调整游戏的难度 在这个快节奏的游戏灵药争夺战中,小朋友们需要用闪电般的反应去捕捉灵药,同时怪物在对你步步紧逼,游戏使用的克隆功能,组织了一支庞大的怪物军团 ## 实现分析 灵药能够不断的被复制出来,并且向阿达靠拢,当阿达收集到一颗灵药时,我们让分数增加1 ## 本节课知识点 使用克隆知识点来实现灵药在舞台区的迅速移动,并实现分数的累加规则 ## 视频实战 我们打开网易咔嗒,在我的作品中选择《灵药战争》项目,进入scratch的编程环境 切换到灵药的脚本区,我们先建立一个绿旗点击事件,从事件模块组里拖入`当绿放被点击`代码块,在下面拖入设置角色大小的代码块,我们把角色大小设置为10,因为我们要使用克隆体来实现效果,所以,从外观模块且里拖入`隐藏`代码放,放到设置角色大小代码块的下方,如下图: ![](https://ws1.sinaimg.cn/large/6bd2803cgy1fv7rv2wojjj209804wq34.jpg) 灵药的移动方向也是随机的,所以随机选择方向的代码和小怪物的随机方向选择的代码是一致的,从动作模块组里拖入`面向90度`代码块,从运行符模块组里拖入`随机数`代码块,将随机数取值范围设置为-180到180之间, ![](https://ws1.sinaimg.cn/large/6bd2803cgy1fv7ry3t98oj20e402cdfx.jpg) 设置好方向后,我们实现一下灵药移动的代码,以及生成克隆体的代码,这些我们在上课都已经学习过了,老师直接把代码帖出来吧, ![](https://ws1.sinaimg.cn/large/6bd2803cgy1fv7s06sukfj206207074q.jpg) 最后,我们把代码块组合起来,并嵌入到重复执行代码块当中,灵药本体的预设部分逻辑就实现了,我们上节课说过了,克隆体将继承本体已经预设好的这部分特性 ![](https://ws1.sinaimg.cn/large/6bd2803cgy1fv7s34qqcij20e60g0jsy.jpg) 下面我们为克隆体编写个性化的代码,从控制模块组里拖入`当作为克隆体启动时`,从外观模块组里拖入`将虚像特效设定为50`,因为我们在上一段代码里设置了灵药的本体隐藏,所以,对于克隆体我们需要让它显示出来,从外观模块组里再拖入`显示`代码块 ![](https://ws1.sinaimg.cn/large/6bd2803cgy1fv7yprih96j20b4068dg4.jpg) 接下来实现一下灵药向着小阿达汇聚的效果,从动作模块组里拖入`面向鼠标指针`代码块,将“鼠标指针”改为“阿达”,再拖入`移动1步`代码块,再从控制模块组里拖入`重复执行10次`代码块,把以上两段代码放入循环结果当中,将循环次数改为300次,代码如下: ![](https://ws1.sinaimg.cn/large/6bd2803cgy1fv7yotkr0oj209005gmxe.jpg) 下面我们来设置一下分数累加的规则,从控制模块组里拖入`如果...那么...`代码块,在条件判断当中拖入`碰到阿达`条件代码块,在条件结果当中拖入`将得分增加1`代码块,我们再给这段代码增加个声效,从声音模块组里拖入`播放声音`,选择我们提前准备好的声音,小朋友们也可以通过录制的方式准备自已想要播放的声音哦,酷不酷? ![](https://ws1.sinaimg.cn/large/6bd2803cgy1fv7ztu46d0j209q056dg6.jpg) 这段代码的意思是:“灵药的克隆体如果碰到小阿达就播放我们准备的声音”,这个时候小阿达就要把灵药收起来啦,灵药的克隆体被收起来,那么就意味着克隆体的生命周期结束了,所以,我们从控制模块组里拖入`删除克隆体`代码块放入判断结果的最下方,代码如下: ![](https://ws1.sinaimg.cn/large/6bd2803cgy1fv7zxh4syuj20dk08iwf2.jpg) 如果重复执行完300次的向阿达汇聚操作后,仍然没有碰到阿达,我们也要对克隆体进行清理,所以在重复执行300次的代码后面,也要执行删除克隆体的代码块,把刚刚这部分代码组合一下,最终的效果,如下图: ![](https://ws1.sinaimg.cn/large/6bd2803cgy1fv8004ov1pj20by0eotac.jpg) 我们来运行一下,看看效果吧, 嗯,小怪物和灵药都可以在舞台区执行逼近和汇聚的效果了,我们用鼠标拖动小阿达收集一下灵药看一下,嗯,不错,分数可以增加呢,再去挑战一下小怪物,呃,确实也会被减掉分数,非常完美的一段代码哦,我们完成了《群魔乱舞》和《灵药惊现》两部分代码逻辑,今天的学习就到这里吧,我们下节课继续完成小阿达的《闪转腾挪》,拜拜 * * * * * * * * * * **阿达老师-孩子身边的编程专家** *完整课程请关注阿达老师,主页里有完整的课程目录和观看地址*