教学原文参考:猴子接香蕉
这篇文章会介绍如何使用「创建角色」、「角色是否碰到其他角色」、「当按钮按下」、「变数」、「重复判断」、「计次回圈」等积木,实作一个猴子接香蕉的 LED 灯小游戏。
相关文章参考:创建角色、角色是否碰到其他角色、当按钮按下、变数、重复判断。
猴子接香蕉是一个简单的小游戏,游戏开始後,会有「香蕉」不断从上方掉落,使用者需要操纵「猴子」在下方左右移动接香蕉,如果香蕉到地面上就输了。使用 micro:bit 的游戏操作步骤如下:
- AB 按钮同时按下,开始游戏。
- 游戏开始後,下方出现「猴子」角色 LED,上方出现「香蕉」角色 LED 掉落 ( 亮度较暗 )。
- 按下 A 按钮,猴子角色往左移动。
- 按下 B 按钮,猴子角色往右移动。
- 猴子碰到香蕉,就得分。
- 香蕉掉落地面,游戏结束,出现最後总得分。
首先设定按钮控制猴子移动的程序:
完成後,启动 micro:Bit,按下 A 按钮或 B 按钮,控制下方猴子灯号移动。
接着设计游戏开始程序:
香蕉掉落程序:
完成後,启动 micro:Bit,同时按下 AB 按钮,就会出现香蕉不断的从上而下掉落。
接着设计「猴子吃到香蕉」的程序:
完成後,启动 micro:Bit,如果 monkey 碰到 banana 就会得分,并且出现得分动画效果。
修改香蕉掉落的程序,加入没有吃到香蕉时,就表示游戏结束的程序:
最後,在按下 A+B 按钮的积木里,新增「清空画面」以及「游戏继续」的积木。
完成後,启动 micro:Bit,按下 AB 按钮,就可以开始进行猴子接香蕉的游戏。
范例解答:猴子接香蕉
为什麽要使用两个「重复无限次」呢?
因为如果把「香蕉掉落」和「接香蕉」的程序放在一起,会被香蕉掉落的「延迟时间」影响,造成程序较为复杂且不容易管理,所以将程序分开,观念上也比较容易理解。
为什麽要使用「游戏继续」和「游戏暂停」呢?
因为 MakeCode 游戏积木里的「游戏结束」功能,会让整块 micro:bit 功能停止运作,必须重新启动才能继续游戏,且创立角色後,角色会影响 LED 所有的显示画面,使用了游戏暂停就能避免这种情况发生。
大家好,我是 OXXO,是个即将迈入中年的斜杠青年,如果对我有点兴趣(笑,可以与我联系,一起来做点有玩又有创意的东西吧!
>>: DAY 14 『 Realm 新增、修改、删除 』Part2
在 Objective-C 中,为了保存基本的资料类型,像是 int, float, bool,内建...
今天在更新wordpress插件时出现了Briefly unavailable for schedu...
前一篇说到 该怎麽写 data 的资料,找回双向绑定机制 !!! 这边先小小的补充一下 XD 在 O...
我今天来讲下如何看手册操作暂存器好了,就以简单的GPIO口hi low就好,我手边刚有STM32F4...
延续前日介绍,今天我们来讲Model内的fields延续昨日范例 # -*- coding: utf...