Scratch视频侦测游戏
2020-08-02陈新龙
陈新龙
之前我们用Scratch做过用键盘操控角色接住掉下来的苹果游戏,今天和大家分享一款不一样的Scratch游戏,用自己的手去抓天上掉下来的香蕉,你应该很好奇,怎么样做出这样的效果呢?
我们已经学习了很多Scratch的扩展的模块,今天要学习一款新模块“视频侦测”,你可以点击界面左下角“扩展”添加这个模块(如图1)。
“视频侦测”是一个非常神奇的模块,它有四个小积木(如图2)。
1. 当视频运动>“10”:当侦测到摄像头中有物体运动速度大于10时会执行后续程序,数字越大反应越迟钝。
2. 相对于“角色/舞臺”的视频“运动/方向”:常用在判断摄像头中物体的运动方向变化与舞台角色间的关系。
3. “开启/关闭/镜像开启”摄像头:镜像开启表示拍摄出的视频效果会左右反向。
4. 将视频透明度设为“50”:透明度数字越高越模糊,透明度越低越清晰。
我们可以用视频侦测模块获取摄像头数据,控制角色进行相关操作,并且还可以完成一些体感小游戏。
今天我们只需用“开启”摄像头和将视频透明度设为“50”两个模块完成这个小游戏。
游戏规则:游戏开始,开启摄像头,天空中会随机掉下来香蕉,玩家可以伸出手去抓住香蕉,当香蕉被玩家抓住之后,分数加一,随后香蕉消失,如果玩家没有抓到香蕉,分数减一。如果玩家没有抓到香蕉,且分数等于0的时候,游戏结束。
首先添加香蕉角色,新建变量“分数”(用于统计得分),其次不要忘记添加“视频侦测”模块(如图3)。
主程序部分:首先给香蕉设定一个随机的坐标(香蕉默认隐藏),并且设置等待的秒数,当游戏开始后,香蕉显示,每次掉落速度为5;在香蕉下降的过程中,碰到了“手”相当于我们抓住了香蕉,每抓住一只香蕉,分数增加一分,随后消失回到顶层随机坐标位置,如果没有抓住香蕉,香蕉落到了舞台边缘,分数就会扣一分,当我们的分数变为0分的时候,停止所有脚本。
我们如何完成碰到手的判断呢?这需要用到“侦测模块”中的“碰到颜色”积木。
使用开启摄像头模块开启摄像头,这样可以用吸管提取出手上的颜色,当香蕉角色碰到手的颜色,表示抓到了香蕉,分数加一,当没有识别出颜色,香蕉就继续向下掉落,一直到舞台边缘。注意衣服和背景的颜色不要和手撞色了。
通过抓香蕉的游戏我们初步学习了“视频侦测”这个新知识,当然我们也可以给游戏添加一些障碍功能,比如增加一些炸弹,或者是其他水果,做成类似的水果忍者的游戏。