这节课来介绍一下scratch的6种功能块。
Scratch开发的游戏、程序都是由“角色”组成的,它们可以和其他角色以及用户进行交互。角色是通过“脚本”来控制并实现各种动作(动画)的。每个角色可以有任意多个脚本,其中每个脚本都是执行一组特定的任务或动作,每个脚本都由一个或多个“功能块”组成。每一个功能块都是用来实现不同的功能。这些功能块可以大体为分下面6类 : 栈功能块,启动功能块,侦测功能块,逻辑功能块,条件功能块,结束功能块,下面我们来分别认识一下:
1.栈功能块
Scratch提供的主要功能块就是栈功能块。栈功能块比较好识别,顶部有一个“凹口”,而底部有一个“凸起”。顶部的凹口表示这类功能块可以附加到另一个功能块之下,底部的凸起表示允许其他的功能块附加到其下。如下图所示:
2.启动功能块
启动功能块顶部有一个圆角或曲线形状,而底部有一个凸起,这个凸起表明它可以放在其他栈功能块的顶部。如下图所示:
点击“启动模块”后会自动执行与之组合的“功能栈”的脚本。如下图:
3. 侦测功能块
侦测功能块是一个圆角的功能块,它专门设计来提供输入以供其它的功能块处理。如图所示:
上图左数第二个的功能块是“音量”功能块,这个功能块是获取一个数值,表示角色的音量。
侦测功能块是一个圆角的形状,因此它能够嵌入到包含圆角的功能块中。如下图:
4.逻辑功能块
布尔(逻辑)功能块是一个尖角的形状,如下图所示:
逻辑功能块主要是一个判断的作用,由于布尔功能块拥有尖角的形状,它只能够嵌入到包含尖角形的功能块中。如图:
上图想表达的意思是:如果用户按下了空格键的话,那么就不再等待,执行后面的程序,如果没有按下空格键,则继续等待。
5. 条件功能块
这种功能块用于在脚本中创建功能块的一个循环体,只要条件达成,就会不断的运行该脚本中的所有功能块。如图所示:
上图的例子表示,如果按下了鼠标,则角色移动10步。那么我们就可以实现点一下鼠标,角色就向前移动10步的功能。
6.结束功能块
结束功能块负责停止脚本的执行。结束功能块顶部只有一个“凹口”,而底部是平坦的,这代表一段脚本的结束。所以,不能再将其它的功能块附加到结束功能块的底部。如图所示:
实战
在了解了scratch的6种功能块之后,我们就可以用这些功能块进行稍微复杂一点的程序了。为了能够同时体验这六种功能块的使用,我们通过一个程序来体验一下,越下越大的雪花
(1)、点击“菜单栏”的文件菜单,新建作品。
(2)、从“角色区”将默认的小猫角色删除。
(3)、从“背景区”添加冰川背景图
(4)、从“角色区”添加雪花角色
(5)、将雪花的初始大小设置为10
(6)、拖动“启动功能块”,当绿旗被点击时,到“脚本区”
(7)、通过“栈功能块”设置雪花的初始位置和大小
(8)、拖动“条件功能块” 重复执行 和 如果...那么...到“脚本区”
(8)、拖动“逻辑功能块”按下鼠标?嵌入到条件功能块当中
(9)、通过“栈功能块”添加改变雪花的位置和大小的积木
(10)、加入“侦测功能块”和“结束功能块”,完成作品
(11)、在舞台区点击绿旗,开始运行程序。
当我们按下鼠标时,雪花从上面由小到大变化,同时从上面一直掉落下来,直到雪花大小达到50的时候,停止运行所有的脚本。这段程序试验了我们6大功能块的功能。制作了一个雪花掉落的动画。
课后练习:
本节课的雪花掉落时是不会旋转的,如何让雪花在掉落的过程中不断旋转呢?试试看用scratch的功能块能不能让雪花在掉落的过程中旋转起来。
这节课程就到这里,下一节课程我们讲解角色与舞台,除了scratch本身自带的角色和舞台之外,让我们能够自己添加并编辑我们自己的角色,自己的舞台,创作独一无二的个性作品。
閱讀更多 碼農傑哥 的文章