【花雕动手做】基于 Kitronik 可编程开发板之通关樱桃

2025-09-101216
AI 快速预览详细 收起
Kitronik ARCADE是一款专为编程教学与创客实践设计的可编程游戏机开发板,支持微软的MakeCode Arcade平台。用户可以通过图形化或JavaScript编程方式轻松创建、下载并运行复古风格的街机游戏。该开发板集成了彩色LCD显示屏、方向控制键、功能按键、蜂鸣器和震动马达等交互组件,适用于中小学编程课程、创客工作坊、游戏开发教学以及个人项目原型设计。
Kitronik ARCADE 是一款由英国教育科技公司 Kitronik 精心打造的可编程游戏机开发板,专为编程教学与创客实践而设计。该设备原生支持微软的 MakeCode Arcade 平台,用户可通过图形化或 JavaScript 编程方式,轻松创建、下载并运行复古风格的街机游戏。

它集成了彩色 LCD 显示屏、方向控制键、功能按键、蜂鸣器和震动马达等交互组件,提供完整的游戏输入输出体验。无论是初学者进行编程启蒙,还是创客群体开发交互式作品,Kitronik ARCADE 都能作为理想的硬件载体,助力创意实现。

凭借其开源友好、易于上手、兼容性强等特点,该开发板广泛应用于中小学编程课程、创客工作坊、游戏开发教学以及个人项目原型设计,深受教育者与技术爱好者的喜爱。

【花雕动手做】基于 Kitronik 可编程开发板之通关樱桃图3

【花雕动手做】基于 Kitronik 可编程开发板之通关樱桃图1

【花雕动手做】基于 Kitronik 可编程开发板之通关樱桃图2

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(5)
驴友花雕
驴友花雕
作者

驴友花雕
驴友花雕
作者
通过模拟器,调试与模拟运行

实验场景记录




驴友花雕
驴友花雕
作者
图形编程参考实验程序

驴友花雕
驴友花雕
作者
这段代码是一个用 MakeCode Arcade 编写的 “通关樱桃”游戏 的核心逻辑。玩家控制角色在限定时间内收集樱桃,达到一定数量后进入下一关。每一关难度逐渐提升,游戏节奏紧凑,适合锻炼反应力与目标感。下面是从专业角度对代码的详细解读:

代码逐段解析
1、玩家碰到樱桃(触发收集逻辑)
python
[code]def on_on_overlap(sprite, otherSprite):
global count, level
count += 1 # 收集数量+1
info.change_score_by(1) # 得分+1
otherSprite.destroy() # 销毁樱桃
otherSprite.start_effect(effects.smiles, 200) # 显示笑脸特效[/code]
2、判断是否通关
python
[code] if count > 10 + level:
level += 1 # 进入下一关
music.jump_up.play() # 播放通关音效
startLevel() # 重置关卡
else:
music.ba_ding.play() # 播放收集音效[/code]
3、初始化或进入新关卡
python
[code]def startLevel():
global count, food
scene.set_background_color(randint(3, 7)) # 随机背景色
count = 0 # 重置收集计数
index = 0[/code]
4、生成樱桃
python
[code] while index <= 10 + level:
food = sprites.create(sprites.food.small_cherries, SpriteKind.food)
food.set_position(randint(20, 140), randint(20, 100)) # 随机位置
index += 1[/code]
5、显示关卡提示 + 倒计时
python
[code] player2.say("Level " + str(level), 1000) # 显示当前关卡
info.start_countdown(10) # 每关限时10秒[/code]
6、游戏初始化
python
[code]food: Sprite = None
count = 0
player2: Sprite = None
level = 0
game.splash("Hurry!", "通关樱桃!") # 开始提示
level = 1
player2 = sprites.create(sprites.castle.princess_front0, SpriteKind.player) # 创建玩家角色
controller.move_sprite(player2, 70, 70) # 启用移动控制
startLevel() # 启动第一关[/code]
7、游戏特点总结
逐关挑战:每关需要收集的樱桃数量为 10 + 当前关卡数,难度逐渐提升。
时间限制:每关限时 10 秒,增加紧迫感。
视觉反馈:收集樱桃时有笑脸特效,通关时有音效提示。
动态背景:每关背景颜色随机变化,增强视觉体验。
驴友花雕
驴友花雕
作者
作为学习、练习与尝试,这里创建一个通关樱桃的小游戏。
打开网页版:https://arcade.makecode.com/,设置项目名称:通关樱桃
MicroPython实验参考代码
[code]def on_on_overlap(sprite, otherSprite):
global count, level
count += 1
info.change_score_by(1)
otherSprite.destroy()
otherSprite.start_effect(effects.smiles, 200)
if count > 10 + level:
level += 1
music.jump_up.play()
startLevel()
else:
music.ba_ding.play()
sprites.on_overlap(SpriteKind.player, SpriteKind.food, on_on_overlap)
def startLevel():
global count, food
scene.set_background_color(randint(3, 7))
count = 0
index = 0
while index <= 10 + level:
food = sprites.create(sprites.food.small_cherries, SpriteKind.food)
food.set_position(randint(20, 140), randint(20, 100))
index += 1
player2.say("Level " + str(level), 1000)
info.start_countdown(10)
food: Sprite = None
count = 0
player2: Sprite = None
level = 0
game.splash("Hurry!", "通关樱桃!")
level = 1
player2 = sprites.create(sprites.castle.princess_front0, SpriteKind.player)
controller.move_sprite(player2, 70, 70)
startLevel()[/code]
- 没有更多了 -