【青少年编程】【三级】猫咪抓老鼠游戏
Scratch竞赛交流群已成立(适合6至18周岁的青少年),公众号后台回复【Scratch】,即可进入。如果加入了之前的社群不需要重复加入。
微信后台回复“资料下载”可获取以往学习的材料(视频、代码、文档)。
猫咪抓老鼠游戏
1. 准备工作
(1)保留小猫角色,添加“Mouse1”;
(2)默认白色背景。
2. 功能实现
(1)键盘上下左右键控制小猫上下左右移动;
(2)老鼠出现在舞台随机位置;
(3)如果玩家3秒内没有抓住老鼠,老鼠出现在新的随机位置;
(4)如果抓到老鼠,得分加1,老鼠出现在新的随机位置;
(5)左下角有一个大字显示的变量,表示抓到的老鼠数量。
3. 设计思路与实现
(1)角色分析
角色:默认的小猫、Mouse1
(2)背景分析
背景:默认背景无需修改,该背景是透明的看起来是白色
(3)所用积木块介绍
a. 运动类
角色移动到随机位置,下拉可选“鼠标指针”或其他角色
如果增加的是正数,则在原先角色的位置上往右移动对应的数值;如果增加的是负数,则在原先角色的位置上往左移动对应的数值。即实现左右移动的功能。
如果增加的是正数,则在原先角色的位置上往上移动对应的数值;如果增加的是负数,则在原先角色的位置上往下移动对应的数值。即实现上下移动的功能。
b. 外观类
在舞台中显示当前角色
在舞台中隐藏当前角色
c. 事件类
程序启动之后,点击绿旗,执行后续的程序脚本 该模块通常在程序开始时使用
当按下键盘上某个具体的键时,执行后面的程序指令,下拉三角可以选择“方向键”,“字母键”,“数字键”等
消息事件启动积木块,消息是脚本之间、角色之间、舞台与角色之间沟通的重要通道 当接收到消息时,执行后面的程序指令
广播一个消息,消息可以新建,数量也不限制,不同的消息可以用于不同的场合
d. 控制类
重复执行模块里面的积木指令
条件判断语句,如果条件返回值为真(bool值),那么模块里面的积木指令,如果条件不成立,返回值为假,执行条件判断模块后面的程序指令
循环积木块:一遍一遍地执行包起来的积木序列 判断条件是否为真,如果尖尖角里面的返回值为真则停止循环
e. 侦测类
判断当前角色是否碰到鼠标,下拉可以选择其它角色和舞台边缘
当我们打开Scratch的时候,计时器就工作了,它不停的计数,以”毫秒"为单位,不停的涨,换句话说,我们打开scratch多长时间,它就记了多长时间的值,当然,这个值对我们没有什么用,所以我们需要使用计时器的时候,先使用侦测里的计时器归零。
初始化计时器,让计时器归零重新开始计时
f. 运算类
比较运算,左边大于右边返回true值(真),否则返回false值(假)
g. 变量类
已经建立的变量,我的变量是默认生成的变量
设置变量的值为给定值,通常用于初始化变量
设置变量的值为自身的值加1
(4)角色、舞台背景设置
a. 角色设置
在角色区,点击“选择一个角色”菜单,在角色库中选择Mouse1。起初默认的小猫角色不变。
b. 舞台背景设置
使用默认的背景设置即可。根据题目的要求“在舞台的左下角有一个大字显示的变量,表示抓到的老鼠数量。”,所以需要进行以下的操作:
第一步:勾选我的变量,使其在舞台中显示。
第二步:将我的变量移动到舞台的左下角,点击右键选择“大字显示”。
(5)脚本编写
a. 角色:小猫
流程描述:
根据题目要求:键盘上下左右键控制小猫上下左右移动。
当按向上键时:
小猫y坐标增加10
当按向下键时:
小猫y坐标减少10(增加-10)
当按向左键时:
小猫x坐标减少10(增加-10)
当按向右键时:
小猫x坐标增加10
b. 角色:Mouse1
创建Start消息:
Mouse1执行代码:
流程描述:
本题的核心是关于计时器的应用。如果Mouse1没有被猫抓住,3秒钟之后,移动到在舞台的随机位置并重新计时等待下一个3秒钟。如果被猫抓住,那么立刻移动到舞台的随机位置并重新计时等待3秒钟。
当按下绿棋时:
开始:点击绿棋,开始执行代码。 广播:进行游戏开始的广播(Start) 重复执行:随机出现在舞台上,等待3秒钟 随机移动:根据题目要求将Mouse1移动到舞台的随机位置 开始计时:计时器归零 等待:重复执行等待计时器到达3秒钟
当接收到Start消息时:
初始化分数:将我的变量设置为0 重复执行:判断是否被抓住 如果被猫抓住 隐藏 增分:将我的变量增加1 随机移动:移动到随机位置 显示 计时器归零:重新记录3秒钟
(6)结果展现
4. 考点分析
三级考试大纲与说明
(一)考核目标
进一步认识编程软件的高级功能,对随机数的产生、变量的设置,基于变量的逻辑运算与关系运算的组合使用,解决实际问题;考查画笔模块的更高级操作,应用广播来传递数据,应用克隆来生成克隆体,并灵活控制克隆体;考查对选择语句、循环语句的嵌套使用,以及运用循环简化多次的反复操作程序的理解程度。同时针对参加 3 级考试的学生 将进行多种情况的逻辑处理和交互控制能力的考查。
(二)能力目标
学生对编程软件的进一步综合操作能力,考查对随机数,变量,广播,克隆等知识的掌握,同时考查学生对已掌握知识的深度综合应用,另针 对参加 3 级考试的学生将进行难度更高的逻辑推理能力的考查。
(三)考试标准
1、掌握编程环境的高级功能,并理解其中的基本概念。
1)能够新建、删除变量,修改变量名; 2)能够设定、增减变量值,在舞台区显示、隐藏变量; 3)能够灵活使用画笔及设置画笔的各项参数; 4)掌握逻辑运算与关系运算的组合使用; 5)能够运用循环简化多次的反复操作程序; 6)能够应用广播来传递数据,实现不同角色之间的交互; 7)能够理解广播和广播并等待的区别; 8)能够应用克隆来生成克隆体,并灵活控制克隆体。
2、理解并在程序中使用随机数和变量。
1)理解随机数的概念,能够产生一个随机数; 2)理解变量的概念,理解变量的作用域; 3)能够通过变量的变化让程序跳转到不同的部分; 4)程序中包含不同条件选择语句的嵌套; 5)程序中包含循环语句的嵌套; 6)程序中包含根据选择语句的真假跳出循环程序; 7)循环语句、选择语句嵌套的综合运用。
(四)知识块
[x] 1. 随机数:随机数的产生,随机数的应用场景判定选取 [x] 2. 变量:新建变量,初始化变量,修改变量名,删除变量,变量值的设定、增减,变量值变化引起效果的变化,变量的显示和隐藏,变量设置为滑杆模式, 变量的作用域,不同应用场景 [x] 3. 循环语句:运用计数循环简化多次的反复操作程序、运用条件循环简化多次的反复操作程序 [x] 4. 循环与选择的嵌套:选择语句的嵌套、选择嵌套和逻辑运算符综合运用、循环语句中包含跳出循环、循环语句的嵌套、选择语句与循环语句的嵌套的综合运用 [ ] 5. 画笔:颜色(亮度,饱和度,对比度),图章,擦除图章 [x] 6. 广播:广播传递数据,广播并等待,多角色通过广播交互,广播的使用场景 [ ] 7. 克隆:克隆自己,删除克隆体,克隆体启动的设置 [ ] 8. 逻辑推理,编程数学:判断条件的逻辑关系
备注:
[x] 为本题涉及到的知识点。 [ ] 为需要掌握,但本题未涉及到的知识点。
(五)题型配比及分值