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

[项目] 【花雕动手做】基于Kitronik可编程开发板泡泡球小游戏

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

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

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

【花雕动手做】基于Kitronik可编程开发板泡泡球小游戏图1

【花雕动手做】基于Kitronik可编程开发板泡泡球小游戏图2

驴友花雕  中级技神
 楼主|

发表于 昨天 11:32

【花雕动手做】基于Kitronik可编程开发板泡泡球小游戏

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

MicroPython实验参考代码

  1. def on_right_repeated():
  2.     bubble.tilt_angle(bubble.Choice.LEFT)
  3. controller.right.on_event(ControllerButtonEvent.REPEATED, on_right_repeated)
  4. def on_a_pressed():
  5.     bubble.toss_bubble()
  6.     bubble.load_bubble()
  7. controller.A.on_event(ControllerButtonEvent.PRESSED, on_a_pressed)
  8. def on_hit_wall(sprite, location):
  9.     bubble.stick_to_wall(sprite, location)
  10. scene.on_hit_wall(SpriteKind.bubble, on_hit_wall)
  11. bubble.create_board()
  12. bubble.load_bubble()
  13. mySprite = sprites.create(io2_images.joy, SpriteKind.player)
  14. mySprite.top = 102
复制代码


回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 11:35

【花雕动手做】基于Kitronik可编程开发板泡泡球小游戏

代码解读

控制逻辑
1、 持续按右键:调整泡泡角度
python
  1. def on_right_repeated():
  2.     bubble.tilt_angle(bubble.Choice.LEFT)
  3. controller.right.on_event(ControllerButtonEvent.REPEATED, on_right_repeated)
复制代码

当玩家持续按住右方向键时,泡泡发射器向左倾斜。

bubble.Choice.LEFT 是一个枚举值,表示调整方向。

这可能是为了制造“反向控制”效果,增加挑战性。

2、 按 A 键:发射泡泡
python
  1. def on_a_pressed():
  2.     bubble.toss_bubble()
  3.     bubble.load_bubble()
  4. controller.A.on_event(ControllerButtonEvent.PRESSED, on_a_pressed)
复制代码

玩家按下 A 键时:

当前泡泡被发射出去(toss_bubble())。

立即加载下一颗泡泡(load_bubble()),保持节奏。

3、泡泡碰墙处理
python
  1. def on_hit_wall(sprite, location):
  2.     bubble.stick_to_wall(sprite, location)
  3. scene.on_hit_wall(SpriteKind.bubble, on_hit_wall)
复制代码

当泡泡碰到墙壁时:

它会“粘”在墙上,模拟泡泡停留在顶部或侧边。

location 参数记录碰撞位置,用于精确定位。

4、游戏初始化
python
  1. bubble.create_board()
  2. bubble.load_bubble()
  3. mySprite = sprites.create(io2_images.joy, SpriteKind.player)
  4. mySprite.top = 102
复制代码

bubble.create_board():创建泡泡游戏的初始棋盘(可能是泡泡阵列)。

bubble.load_bubble():加载第一颗待发射泡泡。

创建一个玩家角色 mySprite,使用图像 joy,并将其顶部位置设为 102(靠近底部)。

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 11:38

【花雕动手做】基于Kitronik可编程开发板泡泡球小游戏

图形编程参考实验程序

【花雕动手做】基于Kitronik可编程开发板泡泡球小游戏图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 11:48

【花雕动手做】基于Kitronik可编程开发板泡泡球小游戏

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

【花雕动手做】基于Kitronik可编程开发板泡泡球小游戏图1

实验场景记录

【花雕动手做】基于Kitronik可编程开发板泡泡球小游戏图4

【花雕动手做】基于Kitronik可编程开发板泡泡球小游戏图2

【花雕动手做】基于Kitronik可编程开发板泡泡球小游戏图3
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 昨天 11:49

【花雕动手做】基于Kitronik可编程开发板泡泡球小游戏

【花雕动手做】基于Kitronik可编程开发板泡泡球小游戏图1
回复

使用道具 举报

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

本版积分规则

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

硬件清单

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

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

mail