* * * * *
* * * * *
## 复习上节课学习的内容
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)
我们来运行一下,看看效果吧,
嗯,小怪物和灵药都可以在舞台区执行逼近和汇聚的效果了,我们用鼠标拖动小阿达收集一下灵药看一下,嗯,不错,分数可以增加呢,再去挑战一下小怪物,呃,确实也会被减掉分数,非常完美的一段代码哦,我们完成了《群魔乱舞》和《灵药惊现》两部分代码逻辑,今天的学习就到这里吧,我们下节课继续完成小阿达的《闪转腾挪》,拜拜
* * * * *
* * * * *
**阿达老师-孩子身边的编程专家**
*完整课程请关注阿达老师,主页里有完整的课程目录和观看地址*
- 简介
- 第二章-星星猎手
- 2.1 玩玩游戏吧
- 2.2 角色到位!
- 2.3 猫咪动起来
- 2.4 海马动起来
- 2.5 海马和猫咪碰上啦
- 2.6 抓海星啦!
- 2.7 抓了几个海星?
- 2.8 更多的海马过来啦
- 第三章 寻找蛋糕(迷宫类游戏)
- 第一课 使用画笔绘制迷宫围墙
- 第二课(1) 键盘操作杰瑞移动
- 第二课(2) 解决杰瑞横穿围墙问题
- 第三课 甲虫狂潮
- 第五课 幽灵出没
- 第六课 收获金币
- 第四章 黑洞大作战
- 4.1 玩玩游戏吧&分析制作思路
- 4.2 level1级别的物体行动
- 4.3 黑洞转起来
- 4.4 吞噬物体&记录分数
- 4.5 黑洞变大
- 4.6 leve2 级别的物体
- 4.7 level2吞噬、level3吞噬
- 4.8 游戏做好啦!
- 第五章 灵药战争
- 5.1群魔乱舞
- 5.2灵药惊现
- 5.3闪转腾挪
- 5.4大功告成
- 第六章 跳跃的猴子
- 6.1 part1