96SEO 2026-02-19 08:52 13
[导读]超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成后续会不定期解读蓝桥杯真题这是Scratch蓝桥杯真题解析第102讲。

能力测试是蓝桥杯大赛组委会与美国普林斯顿多文化教育研究中心合作推出的考试项目。
STEM能力测试致力于综合评价学生的
水平对学生的科技素养、逻辑思维和编程能力等三方面进行客观科学的测试。
打地鼠游戏本题是2023年1月15日举行的第14届蓝桥杯STEMA考试Scratch图形化编程真题初/中级组编程部分第4题。
题目要求编程实现打地鼠游戏通过鼠标控制锤子移动在出现地鼠的地洞处点击锤子被锤子砸中的地鼠出现眩晕后消失。
打地鼠游戏通过鼠标控制锤子移动在出现地鼠的地洞处点击锤子被锤子砸中的地鼠出现眩晕后消失。
等待1秒后锤子持续跟随鼠标指针移动按下一次鼠标左键锤子砸下后拾起
一个地鼠在1-2秒的随机时间内在任意一个地洞中出现如果地鼠未被锤子砸中它会在1-2秒时间后消失
对于背景而言当点击绿旗时切换到带有标题的背景1当点击开始按钮后切换到背景2。
其中锤子角色和地鼠角色都有两个造型从功能方面来考虑开始按钮角色最为简单绿旗点击时显示在右下角点击按钮后按钮消失。
被锤子砸到或者1-2秒后地鼠都要消失如果同时对这两个场景进行判断
第一个问题比较简单是否需要克隆的判断依据是在同一时刻舞台上是否会出现多个角色如果是就需要克隆如果不是则无需克隆。
根据题目描述在同一时刻舞台上的地鼠只有一个所以无需克隆当然你用克隆也是可以实现的。
针对第二个问题仔细观察这里的8个洞口呈椭圆形分布并不是一个非常规则的排列因而无法通过简单的计算获取坐标。
不过我们可以换一个思路先用3步定位法获取每个洞口的x、y坐标并使用列表保存起来然后就可以结合随机数指令随机一个洞口。
第三个问题相对要麻烦一点我们不妨这样分析先不考虑锤子打地鼠的情况。
当地鼠出现后1-2秒就消失这个比较简单在这个过程中还需要判断地鼠被锤子砸到的情形如何在等待的同时进行判断呢
可以使用广播事件机制让等待和判断并行执行同时需要确保当一方条件满足时另一方需要停止执行代码。
比如当锤子砸到地鼠时地鼠消失并增加分数同时要停止等待1-2秒隐藏的代码然后重新出现地鼠。
关于背景的设置可以放在舞台背景中也可以放在任何一个角色中为了简单起见直接写在开始角色中。
然后是锤子角色设置一下位置、方向和造型并隐藏起来切换到锤子角色编写代码如下
最后是地鼠角色将其隐藏起来即可由于分数和洞口位置都是和地鼠角色相关的因此我们将变量和列表的初始化也放在地鼠角色中。
创建一个”分数“变量再创建两个列表分别命名为”坐标x“和”坐标y“并使用3步定位法的编程技巧快速确定好每个洞口的x、y坐标并通过代码将坐标值分别存入列表中在地鼠角色中编写代码如下
别忘了清空列表一共有8个洞口从上到下自左至右依次添加每次添加一组添加后的列表数据如下
当点击开始按钮角色时启动游戏进入游戏界面首先是开始角色它需要隐藏同时需要切换舞台背景对应的代码如下
锤子角色和地鼠角色怎么知道你点击开始按钮了呢打个电话通知一下呗所以这里使用了”广播开始“指令。
启动游戏后锤子角色切换到显示状态1秒后跟随鼠标移动如果按下鼠标则切换两次造型表示锤子砸下的效果。
代码不难理解但有一个细节需要注意在Scratch中编写按下鼠标的操作时通常有一个固定的写法如下
之所以增加了一个”等待按下鼠标不成立“指令是为了避免按下鼠标时重复执行多次的奇怪效果一般来说从鼠标按下到松开才算是一次完整的按键操作这是一个非常重要的编程技巧一定要理解并掌握好。
接下来就是地鼠角色了根据前面的思路分析我们需要使用事件广播机制实现代码并行执行。
为了达到更好的效果我们需要使用两次广播机制第一次是启动游戏时的广播第二次是在地鼠出现后。
当地鼠接收到”开始“广播后先发送一个”出现地鼠“的广播代码如下
为什么要这么写呢你可能会觉得有点多此一举了我们暂且先放一下稍后再说明原因。
当接收到”出现地鼠“的广播消息时地鼠会随机一个洞口出现出现之后有两种情况会消失一是被锤子砸到二是等待1-2秒之后对应的代码如下
由于在列表中保存的x、y坐标是成组的需要通过相同的编号随机获取一组坐标因此我们需要先得到一个1-8之间的随机数作为编号所以这里使用了变量”洞口编号“
当地鼠显示之后如果不考虑被砸中的话1-2秒后会隐藏然后再次出现怎么再次出现呢直接给自己再发送一个”出现地鼠“的广播即可这其实间接的实现了循环效果但为什么不是有循环呢稍后揭晓谜底
在等待的过程中需要判断是否被砸中这是一个并行场景因此发送了一个”判断是否被砸中“的广播消息
判断是否被砸中除了地鼠碰到锤子外同时还要确保按下鼠标即砸下锤子
如果被砸中了切换造型等待0.2秒并隐藏同时增加分数还有一点非常重要的是要停止该角色的其他脚本。
这样一来前面的代码块就终止了从而确保了逻辑的正确性最后再发送一个”出现地鼠“的广播重复这个过程
我们再来揭晓之前的谜底为什么使用广播来实现循环而不是直接使用重复指令。
原因很简单就是因为这里使用了”停止该角色的其他脚本“如果是重复执行的话一旦停止脚本就无法再次出现地鼠了这下你应该彻底明白了吧^_^。
至此整个作品就创作好了一个有趣的打地鼠游戏就创作好了赶紧抡起你的大锤狠狠地砸向地鼠吧
作为初级组最后一题本题还是有一定难度的考察的知识点非常多这需要考生具备扎实的编程基础能够灵活运用各知识点根据题目要求完成作品的创作。
打地鼠是一个非常经典的游戏也有各种不同的游戏版本你完全可以充分发挥自己的创意对作品进行改造和升级要不要尝试一下呢
需要素材和源码的可以移步至“超平的编程课”公众号或者联系本人。
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback