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

【花雕动手做】Kitronik 可编程开发板基于 ARCADE MakeCode 之飞驰的星空 简单

头像 驴友花雕 2025.09.11 7 0

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

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

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

 

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

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

MicroPython实验参考代码
 

代码
projectile: Sprite = None

def on_on_update():
    global projectile
    if Math.percent_chance(25):
        projectile = sprites.create_projectile_from_side(img("""
                . . . . . . . . . . . . . . . .
                . . . . . . . . . . . . . . . .
                . . . . . . . . . . . . . . . .
                . . . 1 . . . . . . . . . . . .
                . . . . . . . . . . . . . . . .
                . . . . . . . . . . . . . . . .
                . . . . . . . . . . . . . . . .
                . . . . . . . . . . . . . . . .
                . . . . . . . . . . . . . . . .
                . . . . . . . . . . . . . . . .
                . . . . . . . . . . . . . . . .
                . . . . . . . . . . . . . . . .
                . . . . . . . . . . . . . . . .
                . . . . . . . . . . . . . . . .
                . . . . . . . . . . . . . . . .
                . . . . . . . . . . . . . . . .
                """),
            0,
            randint(20, 30))
        projectile.set_position(randint(0, scene.screen_width()), 0)
        projectile.set_flag(SpriteFlag.GHOST, True)
game.on_update(on_on_update)

这段代码是用 MakeCode Arcade 编写的一个名为 “飞驰的星空” 的动态视觉效果逻辑。它模拟了星星从屏幕顶部不断飞驰而下的场景,营造出一种太空穿梭或高速飞行的氛围。解读如下:

一、核心功能概览

 

103.jpg

二、代码逐段解析
1、初始化变量
python
projectile: Sprite = None
定义一个全局变量 projectile,用于临时存储每次生成的星星精灵。

2、每帧更新逻辑
python
def on_on_update():
   global projectile
   if Math.percent_chance(25):
       ...
game.on_update(on_on_update)
每帧调用一次 on_on_update(),即每 20 毫秒左右执行一次。

使用 Math.percent_chance(25) 控制星星生成概率,约每 4 帧生成一颗星星。

3、创建星星精灵
python
projectile = sprites.create_projectile_from_side(img("""..."""), 0, randint(20, 30))
创建一个星星图像的精灵,图像为一个小点(1)。

水平速度为 0,垂直速度为 20~30,表示从顶部垂直飞下。

4、设置位置与属性
python
projectile.set_position(randint(0, scene.screen_width()), 0)
projectile.set_flag(SpriteFlag.GHOST, True)
将星星随机放置在屏幕顶部的任意 X 坐标。

设置为 GHOST,表示该精灵不会与其他精灵发生碰撞,纯粹用于视觉效果。

三、视觉效果与设计意图
模拟星星从天而降,形成“飞驰的星空”背景。

可用于游戏开场动画、太空飞船背景、或高速移动场景。

星星速度随机,增强动态感与真实感。
 

图形编程参考实验程序

 

102.jpg

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

 

00207---.gif

实验场景记录

 

104 (1).jpg104 (2).jpg
 

评论

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