通过图形编程软件Scratch结合西游记中的场景、人物学习编程相关知识。
今天给大家介绍用Scratch来模拟孙悟空照镜子的情境,通过按下键盘的“左”、“右”按键就可以实现孙悟空左右移动,同时镜子中的“孙悟空”也会在镜子中移动。
一、效果演示(动图):
二、编写程序
第一步:依次我们需要上传用到的角色。
白板角色留出了透明的矩形部分用来显示出镜子,利用后面讲到的图层知识可以让孙悟空在镜子上显示出来,并且白板将孙悟空没照到镜子的部分挡住。
知识课堂
(1)克隆
在Scratch中,如果需要同一角色的多个实例,可以使用“克隆”指令来实现。今天我们就利用克隆来让舞台上出现两个“孙悟空”。
当克隆发生的那一刻,克隆体会继承原角色(本体)的所有状态,包括当前位置、方向、造型等属性,任何角色都可以使用克隆积木创建出自己或其他角色的克隆体。
需要注意的是,在Scratch中使用“克隆”功能时,本体的“代码(脚本)”也被复制给了克隆体。
(2)关于角色的“图层”
在Scratch中,每个角色都拥有自己的图层,根据角色创建的先后顺序将这些角色的图层分出了优先级,首先创建的角色在最后面,最后创建的角色在最上面。
例如:我们按照孙悟空、镜子、白板的上传顺序,图层分布为:
注:当使用克隆功能时,克隆体的图层默认排在本体的后面。
在积木区可以找到与图层相关的积木:
该积木可以将指定角色的图层显示在其他图层之前或者之后。可以通过下拉菜单选择“前面”或“后面”。
该积木用来将指定角色的图层向前或向后移动1层或多层。通过第一个下拉菜单,可以选择“前移”或“后移”在第二个框中,可以填入数字表示移动的层数。如果把角色向后移动若干层,就可以把它藏在其他角色的后面。
第二步:编写代码
利用刚才讲解的知识,今天我们主要为孙悟空角色编写代码:
1、首先实现按下左右按键实现移动:
2、通过使用“移到最前面”积木,能够让孙悟空出现在舞台最前面,之后使用克隆指令复制出另一个孙悟空。
这时孙悟空的克隆体图层排布在本体图层后面,此时角色间的图层分布如下:
3、根据题目设定,我们需要将本体移动到镜子所在的位置上,并且利用“后移2层”积木实现孙悟空没照到镜子的部分可以被白板“挡住”。
孙悟空本体后移2层后,角色间图层分布如下:
4、完整代码如下:
这样我们通过图层及克隆的知识,就实现了制作一个简单的孙悟空照镜子的程序。我们需要通过这个程序掌握克隆知识、角色图层的相关知识,重点理解在克隆时本体的代码也复制给了克隆体的意义以及角色图层的相关知识,利用相关指令设计程序。