本项目难度较高,适合熟练使用Scratch的同学,用到的知识点:变量、私有变量、克隆、列表、自定义积木、广播、循环、判断等,(本体也是第16届蓝桥杯青少组Scratch省赛中级组编程题:消消乐)具体要求:
1)、点击绿旗,在舞台上出现3行3列排列整齐的随机水果图片,共3种水果图片,每种水果图片各3张,如图所示;
2)、先后点击其中任意两张水果图片,被点击的水果图片会出现红色选框,如图所示;
3)、0.5 秒后,红色选框内的两张水果图片互换位置,同时红色选框消失,如图所示;
4)、重复“具体要求”2)、3),如果某行或某列的3张水果图片相同,那么 0.5 秒后,该行或该列的水果图片全部消失,如图所示;
5)、当所有水果图片都消失后,胜利出现,如图所示。
题目分析:
根据要求,我们对这个游戏进行分解,主要分为三个阶段来实现:
一、实现三行三列水果矩阵,难度在于每种水果各三张。
二、点击两个水果图片,实现交换,核心思想是记录两次点击水果的id,坐标,不仅要实现图片的交换,还要对核心数据进行交换。
三、判断消失,只要某行或某列的3张水果图片相同,让图片消失。
四、判断胜利,这一步比较简单,方法有较多种。
第一节:实现随机水果矩阵
打开scratch,准备一下本节需要用到的素材,如下图所示,背景可以随机选一个:
其中水果角色有多个造型,如下图所示;红框角色可以直接绘制,大小刚好能把水果放在框内即可;胜利角色可以自己照一张图片,在最后全部消除后显示,为了方便你也可以点击下载素材
接下来选中水果角色,开始编程,实现水果矩阵,我们不仅要让水果整齐排列,还需要记录每一个水果的位置,让9个水果按下面的顺序排列
1 2 3
4 5 6
7 8 9
那么难度也来了,我们水果不止3种,而每次只能随机取其中3个,每个都要出现3次,该怎么做呢?
第一步:新建三个变量“果1”,“果2”,“果3”,从5种水果造型随机分配一个,利用随机数来实现,为了保证这三个水果各不相同,我们就加上重复执行,直到满足条件为止,程序如下:
例如:运行结果如图,变量分别对应的是水果的三个造型编号

第二步:给选定的三种水果设置随机位置,方法是新建一个列表“水果”,重复3次,每次把这三种水果插入随机位置,执行完3种水果共占9个位置就完成了。
把这段程序与第一步程序拼接在一起。
第三步:制作新积木“生成水果矩阵”,定义积木。该积木的功能是利用克隆生成9个水果,为每个水果设置一个编号(私有变量:id)让克隆体按照3x3的矩阵排列。
第四步:按水果列表中每个位置的对应的造型编号显示水果(水果的编号id与列表1-9的位置对应)
执行积木“生成水果矩阵”,就会看到如图所示结果。(例如列表中第一个数字是5,那么编号是1的水果就切换到造型5,因此第1行第1个就是橙子;表中第4个数字是4,那么编号是4的水果就切换到造型4,因此第2行第1个就是西瓜;)
在第二步程序下方拼接我们这一步自制的积木“生成水果矩阵”,拼接后的程序如下图,这样我们第一节的内容就完成了。
大家可以多运行几次,注意观察变量和列表中的数据以及舞台中的水果矩阵,理解这种对应关系,下一节我们将实现点击两个水果实现交换。
本站内容未经许可,禁止任何网站及个人进行转载。







