32浏览
查看: 32|回复: 5

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

[复制链接]
Kitronik ARCADE 是一款由英国教育科技公司 Kitronik 精心打造的可编程游戏机开发板,专为编程教学与创客实践而设计。该设备原生支持微软的 MakeCode Arcade 平台,用户可通过图形化或 JavaScript 编程方式,轻松创建、下载并运行复古风格的街机游戏。

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

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

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

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

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

驴友花雕  中级技神
 楼主|

发表于 前天 12:24

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

作为学习、练习与尝试,这里创建一个通关樱桃的小游戏。
打开网页版:https://arcade.makecode.com/,设置项目名称:通关樱桃

MicroPython实验参考代码

  1. def on_on_overlap(sprite, otherSprite):
  2.     global count, level
  3.     count += 1
  4.     info.change_score_by(1)
  5.     otherSprite.destroy()
  6.     otherSprite.start_effect(effects.smiles, 200)
  7.     if count > 10 + level:
  8.         level += 1
  9.         music.jump_up.play()
  10.         startLevel()
  11.     else:
  12.         music.ba_ding.play()
  13. sprites.on_overlap(SpriteKind.player, SpriteKind.food, on_on_overlap)
  14. def startLevel():
  15.     global count, food
  16.     scene.set_background_color(randint(3, 7))
  17.     count = 0
  18.     index = 0
  19.     while index <= 10 + level:
  20.         food = sprites.create(sprites.food.small_cherries, SpriteKind.food)
  21.         food.set_position(randint(20, 140), randint(20, 100))
  22.         index += 1
  23.     player2.say("Level " + str(level), 1000)
  24.     info.start_countdown(10)
  25. food: Sprite = None
  26. count = 0
  27. player2: Sprite = None
  28. level = 0
  29. game.splash("Hurry!", "通关樱桃!")
  30. level = 1
  31. player2 = sprites.create(sprites.castle.princess_front0, SpriteKind.player)
  32. controller.move_sprite(player2, 70, 70)
  33. startLevel()
复制代码


回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 前天 12:30

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

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

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

代码逐段解析

1、玩家碰到樱桃(触发收集逻辑)
python
  1. def on_on_overlap(sprite, otherSprite):
  2.     global count, level
  3.     count += 1  # 收集数量+1
  4.     info.change_score_by(1)  # 得分+1
  5.     otherSprite.destroy()  # 销毁樱桃
  6.     otherSprite.start_effect(effects.smiles, 200)  # 显示笑脸特效
复制代码


2、判断是否通关
python
  1.     if count > 10 + level:
  2.         level += 1  # 进入下一关
  3.         music.jump_up.play()  # 播放通关音效
  4.         startLevel()  # 重置关卡
  5.     else:
  6.         music.ba_ding.play()  # 播放收集音效
复制代码


3、初始化或进入新关卡
python
  1. def startLevel():
  2.     global count, food
  3.     scene.set_background_color(randint(3, 7))  # 随机背景色
  4.     count = 0  # 重置收集计数
  5.     index = 0
复制代码


4、生成樱桃
python
  1.     while index <= 10 + level:
  2.         food = sprites.create(sprites.food.small_cherries, SpriteKind.food)
  3.         food.set_position(randint(20, 140), randint(20, 100))  # 随机位置
  4.         index += 1
复制代码


5、显示关卡提示 + 倒计时
python
  1.     player2.say("Level " + str(level), 1000)  # 显示当前关卡
  2.     info.start_countdown(10)  # 每关限时10秒
复制代码


6、游戏初始化
python
  1. food: Sprite = None
  2. count = 0
  3. player2: Sprite = None
  4. level = 0
  5. game.splash("Hurry!", "通关樱桃!")  # 开始提示
  6. level = 1
  7. player2 = sprites.create(sprites.castle.princess_front0, SpriteKind.player)  # 创建玩家角色
  8. controller.move_sprite(player2, 70, 70)  # 启用移动控制
  9. startLevel()  # 启动第一关
复制代码


7、游戏特点总结
逐关挑战:每关需要收集的樱桃数量为 10 + 当前关卡数,难度逐渐提升。
时间限制:每关限时 10 秒,增加紧迫感。
视觉反馈:收集樱桃时有笑脸特效,通关时有音效提示。
动态背景:每关背景颜色随机变化,增强视觉体验。

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 前天 12:34

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

图形编程参考实验程序

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


回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 前天 12:37

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

通过模拟器,调试与模拟运行

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

实验场景记录

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

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

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



回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 前天 12:38

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

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

使用道具 举报

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

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4 备案 沪公网安备31011502402448

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

mail