最新消息:

scratch少儿编程实战(第三课)

Scratch 少儿编程 2769浏览 0评论

友情提示:视频教程观看时请手动设置清晰度。

scratch少儿编程实战(第三课)

复习上节课学习的内容

Hi,小朋友们!我是阿达老师。我们在前面的课程中完成了小怪物和灵药两部分代码的实现效果,今天我们继续完成小阿达的 “闪转腾挪”效果,let’s go

游戏背景介绍

我们移动鼠标,小阿达要能够随着鼠标移动而移动,不仅要去收集灵药,又要避开逼近过来怪物侵袭,我们收集到一颗灵药可以加1分,但被小怪物攻击一次之后就会减3分,分数超过20我们就顺利过关,分数下降到0以下,游戏就失败了,在这个快节奏的游戏灵药争夺战中,小朋友们需要快速反应去收集灵药,同时还要躲避怪物的步步紧逼

实现分析

1、小阿达能够随着鼠标移动,并且可以收集灵药
2、小阿达收集到足够多的灵药后,能够提示成功信息
3、小阿达被怪物攻击次数过多时,能够提示失败信息

本节课知识点

使用碰到角色功能来实现分数的加减
使用广播消息功能来设置游戏的准入和准出条件

视频实战

我们打开网易咔嗒,在我的作品中选择《灵药战争》项目,进入scratch的编程环境
切换到灵药的脚本区,我们先建立一个绿旗点击事件,从事件模块组里拖入当绿放被点击代码块,首先来初始化一下得分,从数据模块组里拖入将得分设定为0代码块,再来切换一下小阿达的造型,使它在随着鼠标移动的时候看上去像走路的样子,

scratch少儿编程实战(第三课)

接下来我们要实现小阿达随着鼠标移动的效果,这个效果的实现方式,我们在《星星猎手》里已经使用过了,从动作模块组里拖入移到鼠标指针,放入上面切换造型的循环代码中就可以了,

scratch少儿编程实战(第三课)

我们来点击绿旗调试一下吧,现在小阿达已经可以随着鼠标指针快速移动了,赞

为了增加紧张的气氛,我们在角色区点击右键多复制几个小怪物和灵药,

scratch少儿编程实战(第三课)

接下来,我们分别设置一下“碰到怪物”和“碰到灵药”时分数加减的效果
从事件模块组里再拖入当绿旗被点击代码块,从控制模块组里拖入如果...那么...代码块,从侦测模块组里拖入碰到鼠标指针代码块,将“鼠标指针”改为“怪物1”,从运行符模块组里拖入**或**代码块,将两段代码组合一下就是下面的结果

scratch少儿编程实战(第三课)

然后,再从运行符模块组里拖入**或**代码块,把“怪物2”和“怪物1”继续组合起来,
scratch少儿编程实战(第三课)

同理,我们再用一个**或**代码块,组合一下“怪物3”,最终的结果代码为:

scratch少儿编程实战(第三课)

我们把这个复杂的条件判断拖入刚刚的条件判断语句当中,在条件的结果语句当中,拖入将得分增加-3代码块,代码如下:

scratch少儿编程实战(第三课)

这段判断代码的意思就是:“如果小阿达碰到怪物1或者碰到怪物2或者碰到怪物3,则得分减3”,

我们用同样的方式设置一下灵药的判断条件:

scratch少儿编程实战(第三课)

这段判断代码的意思就是:“如果小阿达碰到灵药1或者碰到灵药2,则得分加1”,

我们把这两段代码组合在一起,并且放入一个无限循环代码块当中

scratch少儿编程实战(第三课)

有小朋友会问,为什么要放到无限循环语句当中呢?那是因为需要不断的循环的侦测“小阿达碰到了怪物或者灵药了吗”、“小阿达碰到了怪物或者灵药了吗”、“小阿达碰到了怪物或者灵药了吗”……., 否则一旦停止侦测,那这个时候小阿达碰到怪物或者灵药就不会加减分数了,

我们现在来调试一下,看看是不是可以“碰到灵药就加分”、“碰到怪物就减分”呢?相信你已经愉快的玩儿起来了吧?小朋友们,别着急,我们还些收尾工作没有完成呢,我们继续吧

这个游戏,我们什么情况下才算通关呢?下面我们就来设置一下

我们假设得分大于20分就胜利,再从控制模块组里拖入如果...那么...代码块,从运算符模块组里拖入***大于***代码块,我们设置条件为:“得分”大于20,把这个条件放入判断代码块;从事件模块组里拖入广播消息代码块,广播一条新的消息,名称为“success”,把广播的消息放入条件判断的结果当中,代码如下:

scratch少儿编程实战(第三课)

这段代码的意思是:“如果得分大于20就广播一条success的消息,并且停止当前小阿达的所有在执行代码”

我们广播了一条消息,那么也要同时有角色来处理这条消息,
我们导入一个“good job”的角色,从事件模块组里拖入当接收到success消息时,执行以下代码,

scratch少儿编程实战(第三课)

同理,我们再设置一下,当分数小于0时的逻辑,让小阿达广播一条“failed”的消息

scratch少儿编程实战(第三课)

当“good job”接收到“failed”的消息时,

scratch少儿编程实战(第三课)

切换回小阿达的脚本,把两个得分判断也拖入无限循环的判断当中,那么小阿达最终的代码就是:

scratch少儿编程实战(第三课)

到这里,我们的《灵药战争》项目就结束了,小朋友们是不是迫不及待的要体验一下我们的游戏了啊?老师也很想去玩儿了呢,

scratch少儿编程实战(第三课)

我们已经学习四个游戏的制作了,已经初步掌握了一些编程的知识了,后面还有更多的游戏等着我们去完成哦,我们下节课见



阿达老师-孩子身边的编程专家

完整课程请关注阿达老师,主页里有完整的课程目录和观看地址

 

您必须 登录 才能发表评论!