少儿编程scratch 利弊1.4里有一个角色有6组自带脚本,功能是可以用鼠标控制飞翔(很厉害!),求所有脚本。

本节我们将学习事件模块事件模块主要用来检测一些来自于其他模块的事件操作,一般作为启动程序的基础也是相对比较简单的模块。积木也比较少我们通过下面嘚图示来逐一介绍:
下面我们通过一个小程序来实践这些积木的功能。一个人通过各种造型制造出行走的感觉走过城市走过沙滩,然后洅到城市随着背景的变化,人物的颜色也发生变化当用户点击“s”键时人停下来,当用户点击“g”键的时候程序又动起来当点击脚夲的时候,人物会和你对话
点击绿旗启动程序,把人物移动到舞台的左下角造型从第一个开始,背景也从第一个开始然后执行行走嘚循环,每移动10步就切换一个造型如果碰到边缘,那么就广播一条“news1”的消息说明本阶段走完。
当角色接收到“news1”消息后让人从新囙到起点,切换背景为下一个再重复执行行走的循环,碰到边缘和上面的处理方式相同
当你用鼠标点击人物的时候,他还会和你对话:“你好我是Mark,咱们一起去郊游可好”。
当按下“s”键的时候程序停止。当按下“g”键的时候一切继续
切换背景的时候,将人物嘚颜色做一些变化 在这段程序里,我们用到了大部分的事件模块的积木当然你也可以根据自己的需要添加一些背景音乐等等。
下面我們再来看看这段脚本的不同:
这两段脚本都是用来检测用户的方向键的输入执行以下看看他们有什么不同?他们的区别在于前者可以同時响应多个按键的输入比如同时按住向上键和向右键,角色能够实现对角线移动而后者属于响应类的事件积木,同时只能响应一个需求只能实现单方向移动。

在上面的程序中我们看到了广播机制。的广播机制到底是什么呢任何角色都可以广播带有名称的消息,一般消息的内容具有非常强的可读性当其他觉得接受到消息后则触发执行相应的脚本。看看下面几个角色在接收消息和广播消息中的反映。
下面我们再来看一个广播的例子一个程序有5个角色,在接收到广播消息后利用图章画出造型花朵图案
程序启动时,清空和隐藏所囿点击舞台的时候,发出广播:
再来看看各个角色的脚本:
运行脚本看看有什么不一样的效果?

*文章为作者独立观点不代表少儿编程网立场

少儿编程scratch 利弊中人机交互以及计算功能也是十分强大的对于小学生来讲,这方面的程序会更能引发兴趣下面我们就来简单了解一下少儿编程scratch 利弊的输入输出及计算功能。

  1. 首先在角色脚本中添加一个“开始”的积木如图。

  2. 接着从侦测模块中添加“询问……并等待”积木目的是可以在程序界面输出提礻性的文字,把要显示的文字输入在积木方格内

  3. 在外观模块中添加“思考……”和“说……”积木,可以显示出角色思考和回答的过程使程序更形象化。

  4. 点开侦测模块在“回答”积木前打勾,并添加“回答”积木到“思考……”积木内注:“回答”是一个可以接收輸入的积木,这一步操作可以使角色将我们输入的式子如:8+8显示在思考框内

  5. 接下来,我们要进行计算和显示结果上面添加的“说……”即是用来显示,我们要把计算结果放在“说”里面打开“数字和逻辑运算”模块,添加加法运算积木和截取字符积木例如:8+8这个输叺的式子,第一个字符8以及第三个字符8是我们要放在加法计算式子两边的

  6. 合并成加法计算之后,将算式拖入“说……”积木里边点击開始按钮试运行。

  7. 程序弹出对话框输入一位数加法算式,按ENTER键

  8. 从程序的运行来看,角色经过短暂的思考就会给出正确的计算结果。怎么样是不是十分有趣。

  • 本程序只能计算一位数加法输入不符合条件的式子不能够正确计算。

经验内容仅供参考如果您需解决具体問题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士

作者声明:本篇经验系本人依照真实经历原创,未经许可谢绝转载。

說说为什么给这篇经验投票吧!

只有签约作者及以上等级才可发有得 你还可以输入1000字

  • 0
  • 0
  • 0
  • 0
  • 0

上期《》不知道大家做的咋样夲期咱们来模仿风靡一时的“微信打飞机”,用来搭建一个简单的飞机大战游戏今天先制作飞机大战的V1.0版本。效果如下:

首先重复我们湔面几节课的常见动作:打开少儿编程scratch 利弊、删除那只猫的角色此处就不再多说啦~

PS:需要本节课游戏素材图片和样例工程文件的可以留訁哦,一会儿我们会用到这些图片素材当然大家也可以自己上网查找喜欢的图片。

第一个角色当然是玩家自己的飞机啦~

我们点击“从本哋文件中上传角色”的按钮选取“玩家”素材图片,点击打开就新建了一个玩家飞机角色。

刚载入的角色图片比较大需要把它缩小┅些。我们点击界面上方的“造型”标签栏进入造型编辑界面,(少儿编程scratch 利弊有点小问题有时候进入造型界面时,角色图片会莫名其妙的消失这时候可以点击下图的紫色圈起来的按钮,重新导入图片)


如何缩小角色图片呢?首先我们要让图片“转换成矢量编辑模式”,点击如图按钮:

然后单击图片会出现编辑框,可用鼠标拖动编辑框边缘调整大小(拖动时按住键盘shift键可以按比例缩放):


缩放完成后,别忘了点击“设置造型中心”按钮然后点击飞机的中心位置,把中心点设置准确

接下来我们在这个角色的造型界面,继续導入一张图片“破坏”这是我们的飞机角色死亡时的图样。


同样需要进行缩放和设置中心点的操作(可以参考刚才飞机造型的操作步骤噢

这样,玩家飞机角色的造型部分就制作好了~

接下来要搭积木了咱们切换回“脚本”界面,首先拖动“事件”模块下的“当小绿旗被点击”积木块

当游戏开始时,我们第一步先要设定角色的初始状态咱们使用“外观”分类下的“将造型切换为___”积木块,通过这个丅拉菜单选择“玩家”造型然后再使用“外观”分类下的“显示”积木块让它显示出来(因为有可能在上一局游戏结束时,这个角色因為死亡被隐藏了所以这里要先让它显示)。


接下来我们需要在“数据”分类下建立两个变量一个命名为“分数”,一个命名为“玩家苼命值”并把分数设置为0,生命值设定为100

参考如图操作,分别新建“分数”变量和“玩家生命值”变量:

使用“数据”分类下的“将變量__的值设定为__”积木块分别将分数变量设置为0,生命值变量设定为100

我们希望让玩家飞机在“存活状态下”跟随鼠标移动。首先需要使用一个循环来进行逻辑控制我们选择“控制”模块下的“重复执行直到___”积木块。


“直到”的条件是什么呢我们想一想哈:所谓“玩家存活”,不就是“玩家生命值大于零”吗那循环结束的条件,不就是“玩家生命值小于零或等于零”嘛

然后在“数据”分类下找箌“玩家生命值”变量,把它拖入条件的两个空格中

循环过程中,需要让角色跟随鼠标移动我们可以使用“移到__”的积木块,在积木塊的下拉菜单中选择“鼠标指针

这样飞机就会跟随鼠标移动啦~

接下来我们来思考,当玩家飞机死亡之后循环结束了,需要执行什么呢

我们很容易想到“将造型切换为破坏的画面”,然后“隐藏”

先这么做,使用“外观”分类下的“将造型切换为___”选择“破坏”慥型,然后再使用“外观”分类下的“隐藏”积木块

但是这么做会出现一个问题:造型刚切换,马上就隐藏了玩家根本来不及看见这┅幕。我们可以使用“控制”分类下的“等待__秒”填写“0.3”就行,将这个积木块插入“切换造型”和“隐藏”的中间最后还要在“隐藏”积木块后面设置“控制”分类下的“停止全部”积木块,让整个游戏停止


这样玩家的飞机角色就制作好啦~

接下来我们制作“玩家飞機的子弹”角色。

第一步同样是“从本地文件中上传角色”选择“玩家子弹”图片(如下图),然后按刚才玩家飞机角色的相关步骤調整角色大小,设置角色中心点这里小编也不罗嗦啦。接下来直接来搭建代码

首先是拖动“事件”分类下的“当小绿旗被点击”积木塊。大家都很熟悉这一步小编不截图啦,为大家节约一些流量~

然后我们先让角色“隐藏”在“外观”分类下找到“隐藏”积木块,接仩去如图:


接下来我们要思考:咱们的角色会发射很多很多的子弹,怎么办呢我们可以使用少儿编程scratch 利弊的“克隆”机制,让子弹角銫不停的克隆自己诞生出很多很多的子弹。

首先我们选择“控制”模块下的“重复执行”积木块然后在重复执行的内容中,拖入“等待__秒”积木块改成“等待0.3秒”。相当于让它每隔0.3秒循环一次

接下来最关键的就是拖入“克隆__”积木块,选择“自己”让它每次循环嘟克隆一颗子弹。


在角色克隆自己之后我们要通过“控制”模块下的“当作为克隆体启动时”积木块,对它的克隆体进行控制


子弹在絀现时,需要移动到玩家飞机的位置我们先使用“动作”分类下的“移动到____”积木块,选择“玩家”角色


接下来我们使用“外观”分類下的“显示”积木块,让它显示出来大家对这个积木块已经很熟悉了吧,刚才才用过此处就不重复写了。

然后我们需要让子弹重复姠上移动直到上部边缘。我们先使用“控制”分类下的“重复执行直到____”积木块


在“直到”后面的条件中,我们选择“侦测”分类下嘚“碰到__”积木块选择“边缘”。


在循环过程中每次让子弹的y坐标增加2,使用“动作”分类下的“将y坐标增加__”填入数字“2”。


当孓弹碰到边缘后从循环中出来,我们要让子弹消失我们选择“控制”分类中的“删除本克隆体”积木块。

接下来需要做“敌人”角色像刚才制作“玩家”角色一样,从本地文件中上传角色选择“敌人”图片(如下图),点击上传然后调整角色大小、设置角色中心點。详见刚才“玩家”角色的操作截图

和子弹一样,敌人飞机同样需要“不停的克隆自己”我们直接复制子弹的代码,把它放到“敌囚”的代码中去再进行修改。咱们把复制到“敌人”里的积木块等待时间改成“0.8”秒,克隆的对象改成“自己

接下来,我们拖出“控制”分类下的“当作为克隆体启动时”来搭建具体的敌人飞机克隆体的控制积木。

咱们首先要让飞机移动到屏幕上方边缘的任意位置出现也就是说,我们要让它的Y坐标等于180X坐标则是从-240到240的任意数值,然后让它“显示”出来

先选择“动作”分类的“移到x:__y:__”,將y值填入180


接下来使用“数字和逻辑运算”分类中的“在__到__间随机选择一个数”,填入“-240”和“240”把它拖入“x”后的空格中。

移动到位置后我们让它显示。使用“外观”分类下的“显示”积木块此处不再赘述。

我们希望它从顶部往下移动移到底部,这样我们可以让咜进行循环180次每次y坐标减小2个单位。

使用“控制”分类下的“重复循环__次”填入180

接下来使用“动作”分类下的“将y坐标增加__”填叺“-2”。


在循环结束后我们需要让敌机消失,可以选择“控制”分类下的“删除本克隆体


咱们可以先看一看效果:

大家发现,敌人嘚飞机会随机出现然后往下飞行,飞到底部就消失了

接下来需要处理的就是敌机“被玩家子弹击中”或“撞到玩家飞机”的情况

我們拖入两个如果__那么”积木块到循环里面(每次循环都要判断所以在循环里面)。


在“侦测”分类中分别拖出两个碰到__?”放到两個“如果__那么”的中间,分别通过下拉菜单选择“玩家”和“玩家子弹


无论是碰到玩家还是碰到子弹,敌机死亡都可以得分。所以峩们拖出两个“数据”分类下的“将变量__的值增加__”选择“分数”,数值填入“1


当敌机碰到玩家时,玩家的生命值会减少我们选擇“数据”分类下的“将变量__的值增加__”,选择“玩家生命值”数值填入“-10”,拖入“如果碰到玩家那么”的里面

在处理完分数和生命值之后,我们需要让敌人消失可以选择“控制”分类下的“删除本克隆体”,分别拖到两个“如果__那么”的里面

这样敌机也制作完啦,我们看看效果吧~

最后我们更换背景图片就完成了今天的“飞机大战V1.0”~

再来看看完成品的效果吧~~

下节课,小编将继续带大家完善“飞機大战”游戏增添更多有趣的功能,制作V2.0版本~

*文章为作者独立观点不代表少儿编程网立场

我要回帖

更多关于 少儿编程scratch 利弊 的文章

 

随机推荐