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

【花雕动手做】Kitronik 可编程开发板基于 ARCADE MakeCode 之大青蛙游戏 简单

头像 驴友花雕 2025.09.03 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_a_pressed():
    if frog.overlaps_with(fly):
        game.over(True)
    else:
        info.change_life_by(-1)
controller.A.on_event(ControllerButtonEvent.PRESSED, on_a_pressed)

fly: Sprite = None
frog: Sprite = None
scene.set_background_image(flies_imgs.background)
frog = sprites.create(flies_imgs.frog, SpriteKind.player)
frog.set_position(85, 80)
fly = sprites.create(flies_imgs.fly, SpriteKind.food)
fly.set_velocity(200, 100)
fly.set_bounce_on_wall(True)
info.start_countdown(10)

这段代码是一个用 MakeCode Arcade 编写的小游戏,玩法简单但节奏紧凑,主角是一只青蛙 🐸,目标是抓住一只在屏幕上乱飞的苍蝇 。下面是详细解读:

1、控制逻辑:按 A 键尝试抓苍蝇
python
def on_a_pressed():
   if frog.overlaps_with(fly):
       game.over(True)
   else:
       info.change_life_by(-1)
controller.A.on_event(ControllerButtonEvent.PRESSED, on_a_pressed)

玩家按下 A 键时:
如果青蛙和苍蝇发生碰撞(overlaps_with),游戏胜利结束。
否则,玩家失去一条生命(change_life_by(-1))。
这模拟了“伸舌头抓苍蝇”的动作,考验玩家的时机判断。

2、角色与场景初始化
python
fly: Sprite = None
frog: Sprite = None
scene.set_background_image(flies_imgs.background)
设置背景图为 flies_imgs.background,可能是草地或池塘场景。

初始化两个角色变量:青蛙和苍蝇。

3、创建青蛙角色
python
frog = sprites.create(flies_imgs.frog, SpriteKind.player)
frog.set_position(85, 80)
创建青蛙精灵,属于玩家类型。

设置位置为屏幕中下方(x=85,y=80),方便观察苍蝇动向。

4、创建苍蝇角色
python
fly = sprites.create(flies_imgs.fly, SpriteKind.food)
fly.set_velocity(200, 100)
fly.set_bounce_on_wall(True)
创建苍蝇精灵,属于“食物”类型。
设置速度为 (200, 100),即向右下角飞行。
启用“碰墙反弹”,让苍蝇在屏幕内不断弹跳移动,增加难度。

5、倒计时机制
python
info.start_countdown(10)
游戏限时 10 秒。

玩家必须在时间结束前成功抓住苍蝇,否则游戏失败(虽然失败逻辑未在代码中明确写出,但通常会自动触发 game.over(False))。

图形编程参考实验程序

 

51.jpg

 

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

 

00202.gif

实验场景记录

 

52 (1).jpg
52 (2).jpg
52 (3).jpg
52 (4).jpg

评论

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