[导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第62讲。

第10届蓝桥杯青少年组省赛于2019年3月24日举行,形式为线下考试。Scratch分为初级组和中级组,其中初级组面向7~10岁孩子,中级组面向11~14岁孩子。

击鼓游戏,本题是第10届蓝桥杯Scratch省赛真题编程第7题,是中级组最后一题,初级组没有此题,题目要求考生使用编程创作击鼓游戏。

先来看看题目的要求吧。

一.题目说明

准备工作:

将舞台背景设置为“spotlight-stage”,添加一个“Bellerina”角色、两个“Drum1”角色和两个“Drum2”角色,并按照图 7-1 的位置摆放。角色“Bellerina”的造型和颜色的设置须如图 7-1 所示,五个造型的裙子颜色顺序为:白、红、蓝、绿、黄;四个鼓的颜色分别设置为:红、蓝、绿、黄。

编程实现:

舞台中央的小女孩会随机变换造型及衣服颜色4次,游戏玩家要记住衣服颜色出现顺序,并按顺序敲击相应颜色的鼓,颜色顺序正确则可得1分,并开始下一轮变换颜色;直到某一轮敲鼓顺序错误则游戏结束,更新最高得分。

具体要求:

1、每次点击绿旗后,舞台左上角的“得分”(显示位置见图-2)都为 0;

2、小女孩为造型 1(白色裙子);并说“请观察颜色序列!”2 秒钟(图-2);

3、小女孩切换 4 次造型,每次都是随机切换为造型 2 到造型 5 中的一个(这 4 次切换的造型之间允许重复);而且第一次切换后要说“1”1 秒钟,第二次说“2”1 秒钟,第三次说“3”1 秒钟,第四次说“4”1 秒钟(图-3 至图-6);

4、在 4 次造型切换完成后,小女孩切换回造型 1(白色裙子),表示一轮切换结束。小女孩说:“请按顺序点击相应颜色鼓!”(图-7);

5、游戏玩家根据刚刚小女孩 4 次切换造型中衣服颜色的顺序,依次点击(敲击)相应颜色的鼓,在敲击的第一次鼓后小女孩说“1”,第二次后说“2”,第三次后说“3”,第四次后说“4”;如果玩家敲击的顺序与衣服颜色切换的顺序相一致,小女孩就说“正确!”2 秒钟,且得分加 1(图-8),并从步骤 2 开始下一轮游戏;如果敲击的顺序错误,小女孩就说:“游戏结束”,并根据当前得分的情况更新舞台右上角的最高得分(显示位置如图-9 所示),程序结束。

将程序保存到桌面,命名为“7.sb2”。

评判标准:

  • 10 分:背景、角色和造型的设置符合准备工作中的要求,鼓和小女孩衣服的颜色与题目中图示接近即可得分,只要改变鼓面颜色即视为改变了鼓的颜色。

  • 20 分:在 10 分基础上,能正确地开始游戏,并且每轮小女孩的造型和衣服颜色都是随机的序列,需要多次点击绿旗来验证随机性。

  • 30 分:在 20 分基础上,颜色变化结束,切换为白色裙子和造型 1。

  • 60 分:在 30 分基础上,能实现小女孩说出在本轮中敲击鼓的次数,并实现在点击鼓顺序正确时,得分加 1。

  • 70 分:在 60 分基础上,能实现点击鼓的顺序正确时,正确地循环进行下一轮游戏。

  • 80 分:在 70 分基础上,当点击鼓顺序错误,小女孩说“游戏结束”。

  • 100 分:在 80 分基础上,在游戏结束前,可以更新最高得分并结束游戏。

二.思路分析

本作品是基于Scratch2的,角色都来自于Scratch自带的角色库,不过需要对女孩造型和鼓进行颜色处理,角色列表如图所示:

其中女孩有5个造型,如图所示:

不知道你注意到了没,除了默认的白色造型之外,接下来的红、蓝、绿、黄4个造型,和鼓的排列一致。

本题的难点在于如何判断女孩切换造型的顺序和击鼓顺序是否相同。首先,我们需要使用两个列表分别保存造型顺序和击鼓顺序,然后直接比较两个列表是否相等即可。

三.编程实现

根据题目描述,我们可以分3步来编写程序:

  • 女孩随机切换造型

  • 击鼓并记录顺序

  • 判断游戏是否成功

1. 女孩随机切换造型

首先创建两个列表,命名为“颜色顺序”和“敲鼓顺序”,再创建一个变量“次数”,用来表示女孩切换造型的次数,后面还可以用来表示击鼓的次数,游戏开始时,将列表清空,并将次数设置为1。

接下来,将女孩切换为白色造型,说“请观察颜色序列”,然后重复4次随机切换造型,并将每次造型的名称保存到列表中,每切换一次造型,女孩都说出当前的次数。

造型切换完毕,女孩又切回到白色造型,并说“请按顺序点击相应颜色鼓!”,同时将次数清零。对应的代码如下所示:

需要注意的是,女孩一共有5个造型,但我们只需要在红蓝绿黄四种颜色之间切换,所以这里使用了“在2和5之间取随机数”指令。保存到列表中的是女孩造型的名称,也就是红、蓝、绿、黄。

2. 击鼓并记录顺序

接下来玩家要开始击鼓了,击鼓的时候需要完成两件事情,一是将当前鼓的颜色保存到列表“敲鼓顺序”中,二是女孩说出当前击鼓的次数。

4个鼓角色的功能基本一样,这里以最左边的红色鼓为例,编写代码如下:

需要说明的是,这里再次用到了变量“次数”,这就是为什么要在女孩切换完造型之后将变量清零的原因。

每次敲完鼓之后,女孩都要说出当前敲击的次数,所以这里发送了一个“敲鼓”的广播消息。

其它3个鼓角色的代码基本一样,唯一不同的是向列表中加入的颜色,分别是蓝、绿、黄。

当女孩角色接收到“敲鼓”的广播消息后,说出次数即可,代码如下所示:

3. 判断游戏是否成功

当玩家击鼓4次之后,就要判断游戏是否成功了,我们可以在女孩说出次数之后进行判断,如果次数=4,说明已经敲完鼓了。

判断的依据前面已经说过了,直接判断两个列表是否相等即可,如果相等,将得分加1,并说正确,然后开始下一轮游戏。如果错误,则根据情况设置最高分,并说错误,然后停止全部脚本,这部分的代码如下所示:

在上面的代码中, 使用了两个变量,一个是“得分”,一个是“最高得分”,在游戏开始时,需要将得分设置为0,而最高得分则不能设置初始值的。

重新开始游戏,这里做了一个巧妙的处理,就是直接发送了一个“开始”的广播消息,同时将原来绿旗下面的代码一分为二,如图所示:

注意,这里并没有增加新的代码,只是将绿旗代码一分为二,通过广播机制将二者串联起来,这样就可以在游戏成功之后,再次发送“开始”广播,从而实现多轮游戏了,这是一个非常巧妙而又重要的编程技巧,希望你能够好好体会。

至此,整个游戏就创作好了,你可以放松片刻,体验一下游戏效果了。

四.总结与思考

本题难度系数为6,积木块数量在66个左右,涉及到的知识点主要包括:

  • 给造型填充颜色;

  • 列表的操作,尤其是判断两个列表是否相等;

  • 外观编程,包括切换造型、说话、获取造型名称等;

  • 条件语句的多层嵌套;

  • 事件广播机制。

  • 巧妙使用事件广播来实现多轮游戏的编程技巧。

这是省赛中级组的最后一题,还是挺有难度的,尤其要注意列表的比较,Scratch提供了一个简单的方法,允许我们直接比较列表是否相等。

其次是实现多轮游戏的方法,本题巧妙的使用了事件广播来实现,除了这种方法,我们还可以使用自制积木来实现,你知道怎么做吗,赶紧动手尝试一下吧。

需要素材和源码的,可以联系本人,或者移步至同名wx号。

击鼓游戏-第10届蓝桥杯Scratch省赛真题第7题相关推荐

  1. 小猫打螃蟹-第10届蓝桥杯Scratch省赛真题第2题

    [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第67讲. 第10届蓝桥杯青少年组省赛于2019年3月24日举行,形式为线下考试.Scrat ...

  2. 捉迷藏之四-第10届蓝桥杯Scratch国赛真题第6题程序4

    本文同步发表于"超平的编程课"公众号,更多教程,可移步至公众号. [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第17 ...

  3. 捉迷藏之一-第10届蓝桥杯Scratch国赛真题第6题程序1

    本文同步发表于"超平的编程课"公众号,更多教程,可移步至公众号. [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第14 ...

  4. 捉迷藏之二-第10届蓝桥杯Scratch国赛真题第6题程序2

    本文同步发表于"超平的编程课"公众号,更多教程,可移步至公众号. [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第15 ...

  5. 自动驾驶-第10届蓝桥杯Scratch省赛真题第5题

    [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第64讲. 第10届蓝桥杯青少年组省赛于2019年3月24日举行,形式为线下考试.Scrat ...

  6. 女孩顶球-第10届蓝桥杯Scratch省赛真题第1题

    [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第68讲. 第10届蓝桥杯青少年组省赛于2019年3月24日举行,形式为线下考试.Scrat ...

  7. 逃不掉的小球-第10届蓝桥杯Scratch国赛真题第1题

    [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第22讲. 第10届蓝桥杯青少年组国赛于2019年5月25日举行,形式为线下考试,考生自带电 ...

  8. 计算游泳时间-第10届蓝桥杯Scratch省赛真题第3题

    [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第66讲. 第10届蓝桥杯青少年组省赛于2019年3月24日举行,形式为线下考试.Scrat ...

  9. 跑酷游戏-第13届蓝桥杯Scratch国赛真题第3题

    [导读]:超平老师计划推出Scratch蓝桥杯真题解析100讲,这是超平老师解读Scratch蓝桥真题系列的第27讲. 第13届蓝桥杯青少年组国赛于2022年5月29日举行,形式为在线考试.Scrat ...

最新文章

  1. python第七章动手试一试_Python学习3
  2. 快速排序python实现
  3. 抽象工厂模式:实现ASP.NET访问不同数据库
  4. SQL基础操作_6_处理数字
  5. Hive _练习,更新中
  6. 安防监控应用成LED企业新盈利点
  7. 不同时期的同学的聚会
  8. webrtc笔记(1): 基于coturn项目的stun/turn服务器搭建
  9. Stanford机器学习---第五讲. 神经网络的学习 Neural Networks learning
  10. python编程英语单词下载2019_图形化编程软件-mPython下载2019正式版 下载_久友软件下载...
  11. 如何解决打开PDF文件时显示已损坏无法修复的问题!
  12. 图像分割各种评测标准
  13. 一步教会fpga数字信号处理
  14. Bootstrap优秀模板-INSPINIA.2.9.2
  15. 安卓手机修改音量键为HOME和BACK
  16. 我看男人的眼光,是不行
  17. 通达信精确逃顶主图指标
  18. 云终端和瘦客户机的区别
  19. everything常用搜索命令
  20. 《从零开始的 RPG 游戏制作教程》第六期:设置怪物掉落物并部署关卡怪物

热门文章

  1. 休闲娱乐 - 种花记
  2. GDP、人口普查、结婚离婚等40+个社会科学数据集
  3. 详谈 UNIX 环境进程异常退出
  4. 不同计算机用户的区别是什么意思,电脑操作系统的32位和64位分别是什么意思?有什么区别?...
  5. iPhone的地图app如何获取任意地点的路线
  6. 【TDA2x学习】3、软件架构分析
  7. STM32串口中断接收标记USART_RX_STA 学习
  8. python解析MNIST数据集(IDX格式)
  9. 深度学习中word2vector测试语料text8
  10. mysql 斯文克斯_14、mysql数据库基础