查看: 412|回复: 1

micro:bit造物粒子(基于Mind+)13— 拆弹游戏

[复制链接]
麦克的故事
小朋友们要来麦克家里做客了,麦克很高兴,麦克想把自己最喜欢的玩具拿出来和小朋友们分享,有遥控汽车,遥控飞机
麦克觉得这些玩具没有什么新奇的,怎样才能够做一个属于麦克的游戏呢?麦克决定用micro:bitBOSON做一个炫酷的游戏——拆弹游戏,考验一下小伙伴们的反应能力吧。
截图201808071515247171.png
所需元件
1×micro:bit主控板
截图201808071515488063.png
1×micro:bit扩展板
截图201808071516061373.png
1× 彩虹灯带
截图201808071516195490.png

1×  MicroUSB 连接线
截图201808071516364925.png


实现功能
启动micro:bit之后,LED灯模拟的引线会开始燃烧,当引线烧至最后时炸弹会引爆。麦克需要在炸弹引爆前,根据micro:bit提示的方向依次将板子向不同的方向倾斜,快速解锁炸弹才能避免“**”。
这样的拆弹装置由三个部分组成:
1.    动作识别:用来识别倾斜的方向是否和指示的方向一致。
2.    灯光交互:为LED灯设置引线燃烧的效果,经过时间越长剩余点亮的LED灯越少。
3.    计分系统:在LED灯全部熄灭之前完成20个动作则拆弹成功;LED灯全部熄灭时仍然没有完成,则判定游戏结束。
硬件连接
将彩虹灯带接在扩展板的P0号接口。
截图201808071516581665.png
编写程序
STEP1:动作识别
首先我们需要让micro:bit能够产生并显示随机的方向,在我们向该方向倾斜操作时能识别出来,随后随机显示下一个方向。这样的一个程序的流程图大致如下。

在游戏过程中,只有当我们的操作与随机产生的指示箭头一致时,才会进行下一步操作,否则一直保持当前的箭头方向。
截图201808071518581627.png
怎样产生随机方向呢?

可以用0~3四个数字代表四个方向,使用数学Math下的子模块产生随机数模块“选取0至(  )”来从0~3四个数字中随机选择一个数字。
截图201808071519229124.png
建立一个函数“产生随机方向”,对应产生的随机数,显示不同的箭头。
截图201808071519463070.png
怎样判读倾斜操作的实际方向呢?

通过在输入input下的姿势识别模块来读取micro:bit的倾斜方向,并且分别对应到0~3中。
截图201808071520326235.png
通过一个如果if语句条件判断,操作方向与目标方向是否一致。
截图201808071521093228.png
这个部分的完整程序为:
截图201808071521346928.png
注意:“如果为While语句”用于保证两次随机出现的方向不相同。
STEP2:制作炸弹程序

炸弹的效果通过彩色灯带显示,使用灯带来模拟炸弹的保险丝。随着时间的推移,保险丝上的led灯珠将会以稳定的速度相继熄灭。所以反应速度越快,小灯剩余数量越多。
截图201808071522279437.png
怎么实现倒计时?
建立时间函数,通过计数的形式,设置每次计时的时间间隔,为(1*100)*100ms.一次计时间隔结束,小灯数量减1.

注意:因为micro:bit在处理数据时会消耗到一定的时间,所以倒计时模块实际运行时会走得慢一些。
时间倒计时的同时,小灯的显示部分:
截图201808071523153411.png
这个部分的完整程序:
截图201808071523374929.png
STEP3:增加计分功能
在操作过程中,每次操作方向和目标方向一致,积一分,直到积满20分,并且此时LED灯珠数量大于0,那么挑战成功,拆单成功,最终得分为LED灯珠剩余个数;否则,失败。

流程图大致如下:
截图201808071524266843.png
判断是否成功及失败的程序如下:
截图201808071525078378.png
计分部分可以合并在主程序中
STEP4:最终程序。
截图201808071525563472.png

能力提升
1.尝试加快LED灯的熄灭速度,增加游戏难度;
2.将上下左右方向用其他图形替代,挑战更高难度的下的反应力。
希望你的micro:bit之旅不会止步,用你的奇思妙想,玩出更多新颖有创意的作品。如果你愿意与我们分享的话,也可以直接登陆我们的论坛,让我们的社区论坛记录下你的点点滴滴!
欢迎登陆DFRobot创客社区!

DFRobot 创客社区: www.dfrobot.com.cn




gada888  版主

发表于 2018-9-1 16:14:10

bang,bang,bang
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
wifi气象站

硬件清单

btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2016 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail