今天我们来用 micro:bit 做一个简单的考验反应力小游戏,游戏的规则很简单,led 点阵上有一个小亮点左右移动,当亮点移动到中间时,按下 A 按钮,如果按钮按下时亮点在屏幕中间,则加一分,否则游戏结束,亮点的移动速度会随着游戏进行不断加快,以便增加难度。
下面是实现效果:
实现原理
这个小游戏的原理很简单,小亮点是一个精灵,不停来回左右移动,我们在按下 A 按钮时,判断当前亮点的位置 x 坐标是不是 2,如果是 2,则表明是目标位置,加一分,如果不是,则游戏结束。我们需要一个 额外的变量保存亮点的移动间隔时间,玩家每按对一次,就把移动间隔时间缩短,这样亮点就会越动越快啦。
代码实现
首先打开 https://makecode.microbit.org/ 网站,新建一个项目,
- 创建一个新变量,命名为 liangdian
- 当开机时,在屏幕中间 (2,2) 这个位置创建一个 精灵,并赋值给变量 liangdian
-
创建一个新变量 shijianjiange,代表亮点移动的时间间隔,设置值为 600
-
在无限循环里,把精灵 liangdian 不断移动 1
-
设置 liangdian 如果碰到屏幕边缘则反弹,即向反方向移动
-
暂停 shijianjiange 毫秒数
-
在 输入 分类里 找到 当按钮 A 按下事件,拖入代码区
-
如果 liangdian 的 x 坐标为 2,则 将分数改为 1
-
将 shijianjiange 设置为 shijianjiange – 50,这样每次玩家答对都会使 shijianjiange 变小,从而使 亮点 移动变快
-
否则 玩家 没有在正确时机按下 按钮 A,游戏结束
完整程序图
是不是很简单呀
Hex 文件
完整 hex 文件地址在链接上点右键,选择 链接另存为(Save Link as…),然后就可以保存下来啦。