回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页

【花雕动手做】Kitronik 可编程开发板基于 ARCADE MakeCode 之逃脱迷宫游戏 简单

头像 驴友花雕 2025.09.07 8 0

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

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

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

 

00 (2).jpg
00 (3).jpg
00 (4).jpg

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

MicroPython实验参考代码

 

 

代码
def on_overlap_tile(sprite, location):
    game.over(True)
scene.on_overlap_tile(SpriteKind.player,
    sprites.dungeon.stair_west,
    on_overlap_tile)

mySprite = sprites.create(img("""
        . . . . . . . . . . . . . . . .
        . . . . . . . . . . . . . . . .
        . . . . 3 3 3 3 3 3 3 . . . . .
        . . . 3 . . . . . . . 3 . . . .
        . . . 3 . f . . . f . 3 . . . .
        . . . 3 . . . f . . . 3 . . . .
        . . . . 3 . . . . . 3 3 . . . .
        . . . . 3 3 3 3 3 3 3 . . . . .
        . . . . . . . 3 . . . . . . . .
        . . . 3 3 3 3 3 3 3 . . . . . .
        . . . . . . . 3 . 3 3 3 . . . .
        . . . . . . 3 3 . . . . . . . .
        . . . 3 3 3 3 . 3 3 3 3 . . . .
        . . . 3 . . . . . . . 3 . . . .
        . . . . . . . . . . . . . . . .
        . . . . . . . . . . . . . . . .
        """),
    SpriteKind.player)
controller.move_sprite(mySprite, 100, 100)
tiles.set_tilemap(tilemap("""
    level_1
    """))
tiles.place_on_random_tile(mySprite, sprites.dungeon.stair_ladder)
scene.camera_follow_sprite(mySprite)
info.start_countdown(10)

这段代码是一个用 MakeCode Arcade 编写的 逃脱迷宫游戏 的核心逻辑。它设置了一个玩家角色在迷宫中移动,并在限定时间内找到出口以逃脱。下面是详细解读:

游戏逻辑逐行解析
1、游戏胜利条件
python
def on_overlap_tile(sprite, location):
   game.over(True)
定义一个函数,当玩家角色碰到某个特定地砖时,游戏胜利结束。

game.over(True) 表示游戏以胜利状态结束(通常伴随庆祝动画)。

python
scene.on_overlap_tile(SpriteKind.player,
   sprites.dungeon.stair_west,
   on_overlap_tile)
注册事件监听器:当玩家角色碰到 stair_west(西边楼梯)地砖时,触发胜利。

2、创建玩家角色
python
mySprite = sprites.create(img("""..."""), SpriteKind.player)
创建一个玩家角色,使用了一个像素图形(柯基或其他角色形象)。

SpriteKind.player 表示这是玩家控制的角色。

3、控制角色移动
python
controller.move_sprite(mySprite, 100, 100)
启用玩家控制角色移动。

100, 100 是水平和垂直移动速度,数值越大移动越快。

4、设置迷宫地图
python
tiles.set_tilemap(tilemap("""
   level_1
   """))
加载名为 level_1 的地图,地图中包含迷宫路径和出口。

5、随机放置角色
python
tiles.place_on_random_tile(mySprite, sprites.dungeon.stair_ladder)
将玩家角色随机放置在地图中的 stair_ladder(梯子)地砖上,作为起点。

6、摄像机跟随角色
python
scene.camera_follow_sprite(mySprite)
让摄像机始终跟随玩家角色移动,保持角色在屏幕中央。

7、倒计时机制
python
info.start_countdown(10)
启动一个 10 秒倒计时。

玩家必须在时间结束前找到出口(stair_west)才能获胜,否则游戏失败。

图形编程参考实验程序

 

73.jpg

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

 

00204---0.gif

实验场景记录

 

74 (1).jpg74 (2).jpg74 (3).jpg
 

评论

user-avatar
icon 他的勋章
    展开更多