本项目难度较高,适合熟练使用Scratch的同学,用到的知识点:变量、私有变量、克隆、列表、自定义积木、广播、循环、判断等,(本体也是第16届蓝桥杯青少组Scratch省赛中级组编程题:消消乐)具体要求:

1)、点击绿旗,在舞台上出现3行3列排列整齐的随机水果图片,共3种水果图片,每种水果图片各3张,如图所示;

Scratch少儿编程教程-水果消消乐(一)

2)、先后点击其中任意两张水果图片,被点击的水果图片会出现红色选框,如图所示;

Scratch少儿编程教程-水果消消乐(一)

3)、0.5 秒后,红色选框内的两张水果图片互换位置,同时红色选框消失,如图所示;

Scratch少儿编程教程-水果消消乐(一)

4)、重复“具体要求”2)、3),如果某行或某列的3张水果图片相同,那么 0.5 秒后,该行或该列的水果图片全部消失,如图所示;

Scratch少儿编程教程-水果消消乐(一)

5)、当所有水果图片都消失后,胜利出现,如图所示。

Scratch少儿编程教程-水果消消乐(一)

题目分析:

根据要求,我们对这个游戏进行分解,主要分为三个阶段来实现:

一、实现三行三列水果矩阵,难度在于每种水果各三张。

二、点击两个水果图片,实现交换,核心思想是记录两次点击水果的id,坐标,不仅要实现图片的交换,还要对核心数据进行交换。

三、判断消失,只要某行或某列的3张水果图片相同,让图片消失。

四、判断胜利,这一步比较简单,方法有较多种。


第一节:实现随机水果矩阵

打开scratch,准备一下本节需要用到的素材,如下图所示,背景可以随机选一个:

Scratch少儿编程教程-水果消消乐(一)

其中水果角色有多个造型,如下图所示;红框角色可以直接绘制,大小刚好能把水果放在框内即可;胜利角色可以自己照一张图片,在最后全部消除后显示,为了方便你也可以点击下载素材

Scratch少儿编程教程-水果消消乐(一)

接下来选中水果角色,开始编程,实现水果矩阵,我们不仅要让水果整齐排列,还需要记录每一个水果的位置,让9个水果按下面的顺序排列

1  2  3

4  5  6

7  8  9

那么难度也来了,我们水果不止3种,而每次只能随机取其中3个,每个都要出现3次,该怎么做呢?

第一步:新建三个变量“果1”,“果2”,“果3”,从5种水果造型随机分配一个,利用随机数来实现,为了保证这三个水果各不相同,我们就加上重复执行,直到满足条件为止,程序如下:

Scratch少儿编程教程-水果消消乐(一)

例如:运行结果如图,变量分别对应的是水果的三个造型编号

Scratch少儿编程教程-水果消消乐(一)Scratch少儿编程教程-水果消消乐(一)

第二步:给选定的三种水果设置随机位置,方法是新建一个列表“水果”,重复3次,每次把这三种水果插入随机位置,执行完3种水果共占9个位置就完成了。

Scratch少儿编程教程-水果消消乐(一)

把这段程序与第一步程序拼接在一起。

Scratch少儿编程教程-水果消消乐(一)

第三步:制作新积木“生成水果矩阵”,定义积木。该积木的功能是利用克隆生成9个水果,为每个水果设置一个编号(私有变量:id)让克隆体按照3x3的矩阵排列。

Scratch少儿编程教程-水果消消乐(一)

第四步:按水果列表中每个位置的对应的造型编号显示水果(水果的编号id与列表1-9的位置对应)

Scratch少儿编程教程-水果消消乐(一)

执行积木“生成水果矩阵”,就会看到如图所示结果。(例如列表中第一个数字是5,那么编号是1的水果就切换到造型5,因此第1行第1个就是橙子;表中第4个数字是4,那么编号是4的水果就切换到造型4,因此第2行第1个就是西瓜;)

Scratch少儿编程教程-水果消消乐(一)

在第二步程序下方拼接我们这一步自制的积木“生成水果矩阵”,拼接后的程序如下图,这样我们第一节的内容就完成了。

Scratch少儿编程教程-水果消消乐(一)

大家可以多运行几次,注意观察变量和列表中的数据以及舞台中的水果矩阵,理解这种对应关系,下一节我们将实现点击两个水果实现交换。

本站内容未经许可,禁止任何网站及个人进行转载。