Scratch制作ABCD选择题

2021-09-13 06:03
电脑报 2021年34期
关键词:题库出题鼠标

前几天带同学参加完宁波市知识问答比赛后,我想到一个小问题,我可不可以用Scratch制作一个选择题形式的问答小游戏,以往做问答题都是通过键盘输入ABCD或者1234来进行输入判断,这次除了键盘输入之外能不能用鼠标来选择答案,并根据鼠标的选择反馈结果。

在制作这个问答游戏前,我们按程序设计流程首先需要对这个游戏进行功能及需求分析,功能上需要实现通过鼠标来选择答案,接下来确定可以用角色来充当选项,方便对鼠标点击做出相应的反馈,要判断选择是否正确,正确和错误都要做出对应的反馈比如正确加分,错误不加分。还要解决题库问题,多道题目的问题选项究竟是由角色引出还是放入背景中通过切换背景完成题目的切换,这需要根据后续编程的难易程度选择。分析确定这两点后我们就可以动手编写程序了。

最终我们选择了用背景造型保存题目,通过切换背景换题,打开Scratch的背景页面,将所需要的问题和选项添加到背景造型中。背景依次是三道选择题、游戏封面、正确标志Correct、错误标志Wrong,共6个造型,如果新增题目要放在游戏封面之前。

手动增加四个选项按钮角色,当界面出现问题后,用户可以点击ABCD选项作答。正确加分,错误不加分(如图1)。

首先创建两个广播“开始答题”和“答题结束”用来控制选项角色的出现与消失。默认情况下所有的选项都是隐藏消失不见,当接收到“开始答题”广播后显示ABCD选项,当接收到“答题结束”广播后隐藏ABCD选项。新增变量“选项”记录鼠标输入的选项结果和变量“Score”用来统计最终得分(如图2)。

新增列表“正确答案”,当点击运行后,首先将正确答案选项添加到正确答案列表中,并且分数初始值设为0(如图3)。

當接收到开始游戏后,根据题库的顺序依次进行出题,也可以打乱出题的顺序,随机从题库中出题,代码需要稍作修改,除了将“答题顺序”设为随机数外,答题后“答题顺序”+1也需要修改,本例中未做演示。

出题结束后,通过广播“开始答题”的方式显示出ABCD,当用户通过鼠标点击ABCD选项角色后,“选项”的值自动设置为ABCD。这里可能大家会提出问题了,如何去判断用户已经作答结束呢?我们可以通过“选项”的字符长度判断,当“选项”的字符长度大于0时,说明用户已经答题完毕就可以进行答案的判断了。我们只需要将当前“选项”和列表中对应的“答题顺序”项进行比较就可以了,当“选项”与列表中答案相符,答题正确,背景切换成Correct,“Score”加1分。否则答题错误,切换成Wrong背景,不加分(如图4)。

大家也可以自行设计一些其他小功能,比如倒计时或者附加题……只要开动脑筋,发挥想象,相信你也可以完成得很出色!

猜你喜欢
题库出题鼠标
“整式的乘法与因式分解”优题库
脑力急旋风
神探大脑门(1)探长出题考徒弟
棉和绵
猿题库技术压阵 深耕 K12在线教育市场
猿题库
她负责吗?
鼠标折叠笔
八戒出题等
45岁的鼠标