10浏览
查看: 10|回复: 4

[项目] 【花雕动手做】基于 Kitronik 可编程开发板之游戏信息

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

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

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

【花雕动手做】基于 Kitronik 可编程开发板之游戏信息图2

【花雕动手做】基于 Kitronik 可编程开发板之游戏信息图1

【花雕动手做】基于 Kitronik 可编程开发板之游戏信息图3

驴友花雕  中级技神
 楼主|

发表于 3 小时前

【花雕动手做】基于 Kitronik 可编程开发板之游戏信息

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

MicroPython实验参考代码

  1. def on_a_pressed():
  2.     info.change_score_by(1)
  3. controller.A.on_event(ControllerButtonEvent.PRESSED, on_a_pressed)
  4. def on_b_pressed():
  5.     info.change_life_by(-1)
  6. controller.B.on_event(ControllerButtonEvent.PRESSED, on_b_pressed)
  7. mySprite = sprites.create(img("""
  8.         ...........................cccccccccc..........................
  9.         .........................ccc11111111ccc........................
  10.         ........................cc111111111111cc.......................
  11.         .......................cc11111111111111cc......................
  12.         ......................cc1111111111111111cc.....................
  13.         ......................c111111111111111111c.....................
  14.         .....................cc111111111111111111cc....................
  15.         .....................cc1111111111111111111c....................
  16.         .....................c11111111111111111111c....................
  17.         ....................cc11111111111111111111cc...................
  18.         ....................cc11111111111111111111cc...................
  19.         ....................cc111111111111111111111c...................
  20.         ....................cc111111111111111111111c...................
  21.         ....................cc111111111111111111111c...................
  22.         ....................cc111111111111bcccc1111c...................
  23.         ....................cc11111111111111ccc1111c...................
  24.         .....................c11bcccc1111111cc11111c...................
  25.         .....................cb111ccc1111111111111cc...................
  26.         .....................cb111cc11111111111111cc...................
  27.         .....................cb1111111111111b111ccccc..................
  28.         ....................ccbb111111111111b11cc111cc.................
  29.         ..................ccc11bb11111b1111b111c11111cc................
  30.         ................cccdd111bb11111bbbb111b1111111ccccc............
  31.         ...............cc111d1111bbb11111111bb1111bb111cc1cc...........
  32.         ..............cc1111dd11111bbbbbbbbbbb1111bb111b111cc..........
  33.         ..............c111111d11111111d11111bbb111bb11bb1111cc.........
  34.         .............cc111111d11111111dd1111bb1b111b11b111111c.........
  35.         ............cc111114441111111111ddddb11bbbb111b111111c.........
  36.         ...........cc11111145411111111111111b11111111bb111111cc........
  37.         ..........cc111111145411111111111111bb1111111bb1111111c........
  38.         .........ccdd111111454111111111111111bb1111111bb111111cc.......
  39.         ........cc111d1111145441111111111111111b1111111bb111111c.......
  40.         .......cc11111d111d45541111111111111111bb1111111bb11111c.......
  41.         .......c111111dd1ddd45411111111111111111bb1111111bbddd1cc......
  42.         ......cc1111bbbbbddd454111111111111111111bb11111111bddd1c......
  43.         ......cc11bbb111bbbd4541111111111111111111bb11111111111dcc.....
  44.         ......cc11bb111bbbbc4541111111111111111111dbc11111111111cc.....
  45.         ......cc11b111bb111bc5411111111111111111111dcc11111111111c.....
  46.         bbbbbbcc111111b11111bc4cc111111111111111111ddcc1111111111c.....
  47.         dddddddcc1111b111111bb11ccbbbbbbbb111111111dddcc11111111cc.....
  48.         ddddddddcc111b1111111bb11cdddddddbbbbbbbbbbbbbccc111111cc......
  49.         ddddddddddcccb11111111bbccbbddddddddddddddddddddccc111ccbbbbbbb
  50.         ddddddddddddccc11111111bc111bbbddddddddddddddddddccccccdddddddd
  51.         dddddddddddddccc1111111cc111111bbbddddddddddddddddddddddddddddd
  52.         ddddddddddddbb11cc1111cc111111111bddddddddddddddddddddddddddddd
  53.         ddddddddddbb11111cccccc111111111bdddddddddddddddddddddddddddddd
  54.         ddddddddddb11111111111111111111bddddddddddddddddddddddddddddddd
  55.         ddddddddddbb111111111111111111bdddddddddddddddddddddddddddddddd
  56.         ddddddddddddbb111111111111111bddddddddddddddddddddddddddddddddd
  57.         ddddddddddddddbb111111111111bdddddddddddddddddddddddddddddddddd
  58.         ddddddddddddddddbb111111111bddddddddddddddddddddddddddddddddddd
  59.         ddddddddddddddddddbb111111bdddddddddddddddddddddddddddddddddddd
  60.         ddddddddddddddddddddbb111bddddddddddddddddddddddddddddddddddddd
  61.         ddddddddddddddddddddddbbbdddddddddddddddddddddddddddddddddddddd
  62.         ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd
  63.         """),
  64.     SpriteKind.player)
  65. controller.move_sprite(mySprite)
  66. mySprite.set_stay_in_screen(True)
  67. info.set_score(0)
  68. info.set_life(5)
  69. info.start_countdown(10)
复制代码


回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 3 小时前

【花雕动手做】基于 Kitronik 可编程开发板之游戏信息

代码逐段解析
1、 按下 A 键:增加分数
python
  1. def on_a_pressed():
  2.     info.change_score_by(1)
  3. controller.A.on_event(ControllerButtonEvent.PRESSED, on_a_pressed)
复制代码

当玩家按下 A 键时,调用 info.change_score_by(1),分数增加 1。

可用于模拟收集物品、击败敌人等得分行为。

2、按下 B 键:减少生命
python
  1. def on_b_pressed():
  2.     info.change_life_by(-1)
  3. controller.B.on_event(ControllerButtonEvent.PRESSED, on_b_pressed)
复制代码

当玩家按下 B 键时,生命值减少 1。

可用于模拟受到伤害、失败事件等。

3、创建玩家角色
python
  1. mySprite = sprites.create(img("""..."""), SpriteKind.player)
复制代码

创建一个玩家精灵,图像为一个大型像素图。

使用 SpriteKind.player 类型,便于后续事件绑定。

4、启用移动控制
python
  1. controller.move_sprite(mySprite)
复制代码

启用控制器对角色的移动控制(默认使用方向键或摇杆)。

5、限制角色在屏幕内
python
  1. mySprite.set_stay_in_screen(True)
复制代码

防止角色移出屏幕边界,保持在可见范围内。

6、初始化游戏信息
python
  1. info.set_score(0)
  2. info.set_life(5)
  3. info.start_countdown(10)
复制代码

设置初始分数为 0。

设置初始生命值为 5。

启动一个 10 秒倒计时,适用于限时挑战或关卡控制。

回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2 小时前

【花雕动手做】基于 Kitronik 可编程开发板之游戏信息

图形编程参考实验程序

【花雕动手做】基于 Kitronik 可编程开发板之游戏信息图1
回复

使用道具 举报

驴友花雕  中级技神
 楼主|

发表于 2 小时前

【花雕动手做】基于 Kitronik 可编程开发板之游戏信息

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

【花雕动手做】基于 Kitronik 可编程开发板之游戏信息图1

实验场景记录

【花雕动手做】基于 Kitronik 可编程开发板之游戏信息图2

【花雕动手做】基于 Kitronik 可编程开发板之游戏信息图3

【花雕动手做】基于 Kitronik 可编程开发板之游戏信息图4

【花雕动手做】基于 Kitronik 可编程开发板之游戏信息图5



回复

使用道具 举报

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

本版积分规则

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

硬件清单

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

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

mail