依据科学部门的最新情报。侦测到大量不明小行星向我们靠近,需要我们提高警惕,随时进入作战状态。
课前回顾
通过上个训练任务,你应该可以掌握:
- 依据程序执行效果,解读较为复杂流程图
- 程序有三种执行方式:顺序执行、重复执行、条件判断(分支)执行。
- 使用侦测盒子里的“碰到”积木,可以用来判断两个角色是否碰在一起,如果碰在一起,就得出“成立”的判断结果;如果没有碰在一起,就得出“不成立”的判断结果。
- 控制盒子里的“如果”积木。依据判断成立的结果,可以将内部的积木,按照从上到下的顺序执行。
- 外观盒子里的“隐藏”积木。可以让角色在舞台区隐藏消失。
课前准备
1、点击下方按钮,下载“地球保卫战6.bcm”源码文件。
2、在谷歌浏览器地址栏输入 https://vipcode.fun/kitten编辑器 网址进入源码编辑器,或者直接点击前面的链接进入。
3、导入“地球保卫战6.bcm”源码文件。
课程目标
今天我们面临小行星的严重威胁。必须开火击毁所有具有威胁的小行星。前方高能。训练师要注意啦!
思考
请训练师描述程序效果。
训练师仔细观察后,是否认同我说的呢?
- 点击开始按钮启动程序
- 程序启动之后,每隔一段时间,就会出现一个小行星向我们飞来,并且小行星在舞台区开始出现的位置不确定。
- 我们开炮,如果打中小行星,小行星会发出爆炸声,然后消失;
我们之前的程序,已经可以达到开炮摧毁小行星的效果了。现在我们只要实现让小行星每隔一段时间就出现,并且出现在舞台区的任意位置就行了。那该怎么办呢?还记得,我们炮弹的程序吗?每点击一下,就发射一枚炮弹。我们使用的就是克隆这个积木。只不过这里,我们不用点击来克隆,而是按下开始按钮后,每隔一段时间,就会克隆一个小行星,然后当小行星克隆体启动之后,去执行我们之前规划的小行星的任务就可以了。
程序开始后,小行星会一直出现,只是会间隔一段时间。聪明的训练师看到“一直执行某个任务”后一定会想到重复执行。对的,我们只要让程序开始后,重复执行克隆小行星的任务就可以了,不过每次克隆小行星需要间隔一段时间,这样才能实现小行星间隔一段时间才出现的效果。那该怎么实现呢?我们可以在克隆小行星后,等待一段时间就可以了。然后让新创建的小行星出现在舞台区的任意位置就可以了。我们来规划一下流程图。
这里两个关键点
1、如何执行等待一段时间
2、如何执行移动到舞台任意位置
关于等待一段时间,还记得《森林寻宝》中,小猫每隔1秒钟就向前走一格吗?在那里我们用的就是控制盒子里的“等待”积木。
关于移到舞台任意位置,还记得炮弹角色是如何移到炮台上的操作吗?我们用的就是动作盒子里的“移到”积木。它可以让角色移到我们指定的位置。如下图这个积木后面有个下拉箭头,我们点击一下,如下图;
有一个“随机”选项。这个随机选项就表示舞台的任意位置。训练师可能对随机还不是很了解。随机就是结果只会出现在一个范围内,但是我们没办法预测具体的结果。比如猜硬币的两个面。结果只有,正面或者反面,但是我们没办法确定下一次到底是正面还是反面。移到“随机”位置就表示,会出现在舞台上,但是舞台上具体哪个位置,我们没办法预测。这样就达到了程序效果。
解决这两个关键点,我们就可以按照流程图,拖动积木给小行星编程了。如下图:
我们来点击开始按钮看看程序效果吧!
与我们开始展示的程序效果有点不一样,我们开始展示的程序效果中,小行星一开始是影藏的,而这里是显示的,所以我们看看流程图。我们可以在点击开始按钮后,让小行星隐藏起来,然后当克隆体启动之后,再显示出来,就可以了,我们修改一下流程图。
我们按照这个流程图来修改一下程序积木
好了。我们点击开始,看看是不是实现了初始展示的程序效果了呢!
课后回顾
1、加深了“克隆”积木与“当作为克隆体启动时”积木的理解
2、了解了什么是“随机”以及使用“移动到随机”位置的积木
样例程序
作品代码文件下载
点击下方按钮,可以下载老师完成的代码,导入之后,可以对比一下,咱们互相进步。编程没有绝对的标准答案,只有更加优化的方案!
加油哦,训练师!
举一反三
请思考一下当作为克隆体启动后的小行星。“显示”积木与“移到随机”位置积木是否可以调换位置,以及这种调换位置后是否更加符合程序执行效果。