少儿编程Scratch3.0教程——06 控制积木(基础知识)(文字版)
课程已经过半,从这节课起,你就将开始学习剩下的控制、侦测、运算和变量分类,剩下的积木块比前面学过的内容相对难一些,但是也更重要。难是因为它们的使用更加灵活多变,重要是因为想要完成一个复杂的游戏或者动画,你就必须十分熟练的掌握它们。下面就开始今天的课程,学习控制积木类型。
这篇文章主要分为4个部分:
1、条件指令
2、循环指令
3、等待和停止指令
4、克隆指令
第一,条件指令
在你平时的生活中是否经常会遇到这样的情况,你想要玩游戏,于是去问爸爸妈妈可不可以玩,爸爸妈妈说如果你先做完作业,那么就可以去玩游戏。而在使用Scratch制作动画和游戏时,也会经常碰到需要执行条件判断的地方。例如,如果当你单击小猫,让它在舞台上随机移动,如果它移动到舞台外面时,就让它说一句话,然后返回舞台中央。这时,你就需要使用条件指令来判断小猫是否移动到舞台外面。
条件指令同样有两个积木块,分别是如果...那么...积木和如果...那么...否则...积木。
在这两个积木块的“如果”后面都有一个菱形的空格,里面就是你需要判断的条件,这些条件在Scratch中是用侦测分类和运算分类中的菱形积木块来代替。
在使用如果...那么...积木块时,可以将上面任意一个菱形积木块放到“如果”后面的空格中,当条件完成时,就会开始执行如果...那么...积木块中间的代码块。
例如,我们来完成刚刚说的小猫移动的例子。我们将侦测分类中的碰到舞台边缘积木块放到“如果”后面的空格中,这时候每次执行到如果...那么...积木块,程序就会去检查小猫有没有碰到舞台边缘,如果碰到了,就会执行中间的积木块,让小猫说“我走出舞台了”,然后回答舞台中央。如果没有碰到,那小猫就不会做任何事情。

而如果...那么...否则...积木块,可以发现它的上半部分和如果...那么...积木块一样,只是在后面多了一个“否则”的部分。当使用它时,当条件完成时,就会开始执行如果...那么后面的代码块,当条件没有完成时,就会执行否则后面的代码块。
还是上面小猫的例子,当小猫碰到舞台边缘时,让它说“我走出舞台了”,然后回答舞台中央。当小猫没有碰到舞台边缘时,让它说“我还在舞台内”。

第二,循环指令
循环积木
在前面课程中,你已经使用过循环指令,它们包括重复执行N次积木块和重复执行积木块。
在制作动画和游戏的过程中,你经常会让角色重复去做某些事情,例如为了实现动画效果,你需要不断的切换角色的造型。
为了让角色在舞台上左右来回不停的走动,你需要不断的使用改变方向积木和滑行积木。
假设没有重复执行积木时,你只能像上面两幅图的左边这样去实现它们,重复的将相同积木块加在下面。需要重复的次数越多,左边需要堆加的积木块也就越多,如果需要永远不停的重复,那左边根本无法实现。相反,在右边的使用重复执行积木块时,需要执行的外观或者动作积木块只需要使用一次,剩下的就在重复执行积木块中去修改需要执行的次数就可以了。
因此,当你在制作动画或者游戏时,你需要观察是否有些积木块会重复使用,如果重复了就可以使用重复执行积木来代替它们。而两个重复执行积木的区别是,重复执行N次积木块的重复次数是固定的,而重复执行积木块的次数是无限次。
条件循环积木
除了上面的两个循环指令之外,你经常还会遇到这种情况,你需要一直重复执行某件事,直到满足某个条件就停止执行,这时候你就可以使用重复执行直到...积木。
在这个积木的后面也有一个和条件积木一样的菱形空格,它们的使用方法也差不多,你可以在里面放入菱形的条件积木,当这个条件不满足时,程序会一直重复执行重复积木块中的代码,当这个条件满足以后,就会停止循环,继续执行重复积木块后面的代码。
例如,还是之前小猫的例子,你可以让小猫一直重复在舞台内随机移动,并且说“我还在舞台内”,直到它移动到舞台外面之后,停止随机移动,并且说我走出舞台了,然后返回舞台中央。

嵌套循环
实际上,循环积木块除了可以单独使用之外,还可以嵌套使用,就是在一个循环积木中在放入另外一个循环积木。例如,上面这个小猫的移动的程序,点击绿旗以后只会执行一遍,如果我们想让它一直不停的执行,就可以在当绿旗被点击后面再嵌套使用一个重复执行积木块。

第三,等待和停止指令
在前面的课程中,我们也已经接触过等待和停止积木。在Scratch中总共有2个等待积木和1个停止积木。
例如,当我在前面的动画中想要模拟角色走路的动画效果时,就用到了等待N秒积木在减慢造型的切换速度。使用这个积木会让角色停止,等待积木中设置的时间过去之后再接着往下执行。
而等待...积木和等待N秒积木类似,它也可以让角色停止,区别是在它的后面有一个菱形空格,需要像条件指令一样放入一个菱形积木作为判断条件,当条件满足之后再接着往下执行。
最后一个停止...脚本积木有三个选项,全部脚本、这个脚本和该角色的其他脚本。
选择停止全部脚本时,就像是点击了舞台上方的红色停止按钮,整个游戏都会停止。
选择停止这个脚本时,会让该积木块所在脚本停止,它通常会配合重复执行积木和条件指令使用,用来结束循环。
选择停止该角色的其他脚本时,会让该积木块所在脚本之外的其他脚本都停止,你已经在小小演奏家和环游世界两个游戏中都使用过它。
第四,克隆指令
你有没有想过,自己制作自己的复制人,这样就可以有很多个你,让它们一个去上学,一个去玩游戏,还有一个趟在床上睡懒觉。而克隆指令的作用就是让你拥有这样的超能力。
克隆指令有3个积木块,分别是当作为克隆体启动时积木、克隆...积木和删除此克隆体积木。
当你需要克隆某个角色时,就可以使用克隆...积木,此时就会在所克隆角色的位置出现一个复制人,复制人的各种属性、造型和声音都和原来的角色一模一样。
克隆完成以后,你可以在当作为克隆体启动时积木下面增加其他积木,这样复制人就会帮你去做你想让他做的事情。
当复制人的任务完成时,记得要使用删除此克隆体积木将它删除掉,因为每个复制人都会占用系统资源,如果复制人太多,游戏或者动画就会变的越来越卡。而Scratch中也限制了复制人的数量,不论克隆多少个角色,它们所有复制人的数量最多只能有300个。
除了原始角色的属性、造型和声音之外,复制人还会继承原始角色的某些事件。
例如,当背景换成。。。积木,当接收到。。。积木,当按下。。。积木,当舞台被点击积木,当。。。>N积木这些事件被触发时,原始角色和复制人都会运行事件积木下面的指令。
而当角色被点击积木被触发时,只有被点击的角色才会运行该事件积木下面的指令。
克隆是Scratch中十分重要也相对较难的积木,在制作游戏时,使用它可以帮你节省很多重复的积木块,我们也会在后面的项目中经常使用到它。
以上就是控制积木的全部内容,从控制分类开始,后面的积木块相较前面的分类会更难一些,也是后面的课程中时常会使用的积木,所以需要你多动手去使用它们,感受一下每种积木块的用法,并且尽可能的熟练掌握它们。
同样,如果你在学习过程中遇到问题无法解决,你可以扫码关注我的微信公众号“梦世界”给我留言,或是加入我所建的微信交流群中给我反馈(微信公众号中给我留言,我会拉你入群),我会对你的提问一一进行解答。
在下一篇文章中,我还是将会引导你利用上面的内容来完成一个简单的动画,我们下节课再见。
Talk is cheap. Show me the code...
如果你看完以上内容,对少儿编程感兴趣,有初中以下想学习编程或者数学思维课的小朋友,欢迎联系。如果你有Web应用系统、手机APP、微信小程序等软件开发需求,也欢迎与我联系。期待能与你共同进步。。。
0条留言