驴友花雕 发表于 前天 17:52

【花雕动手做】基于 Kitronik 可编程开发板之公主披萨

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

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

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







驴友花雕 发表于 前天 17:53

【花雕动手做】基于 Kitronik 可编程开发板之公主披萨

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

MicroPython实验参考代码

def on_on_overlap(sprite, otherSprite):
    game.over(False)
sprites.on_overlap(SpriteKind.player, SpriteKind.food, on_on_overlap)

mySprite = sprites.create(img("""
      . . . . . f f 4 4 f f . . . . .
      . . . . f 5 4 5 5 4 5 f . . . .
      . . . f e 4 5 5 5 5 4 e f . . .
      . . f b 3 e 4 4 4 4 e 3 b f . .
      . . f 3 3 3 3 3 3 3 3 3 3 f . .
      . f 3 3 e b 3 e e 3 b e 3 3 f .
      . f 3 3 f f e e e e f f 3 3 f .
      . f b b f b f e e f b f b b f .
      . f b b e 1 f 4 4 f 1 e b b f .
      f f b b f 4 4 4 4 4 4 f b b f f
      f b b f f f e e e e f f f b b f
      . f e e f b d d d d b f e e f .
      . . e 4 c d d d d d d c 4 e . .
      . . e f b d b d b d b b f e . .
      . . . f f 1 d 1 d 1 d f f . . .
      . . . . . f f b b f f . . . . .
      """),
    SpriteKind.player)
controller.move_sprite(mySprite)
mySprite.set_stay_in_screen(True)
pizza = sprites.create(img("""
      .............beebbbb............
      ............eebbbb4bb...........
      ............eb344bb4bb..........
      ............e44334bb4bb.........
      ............eb433344b4be........
      ............4eb43344444be.......
      ...........bd4eb43333344bb......
      ..........b455d4443333444bb.....
      ..........4d5555d444333444bb....
      .........4555555dd4b4443444be...
      ........bd5555d555d4bb444444ee..
      ........b55ddd665555bb4b44444ee.
      .......bd5555677655554ebb44444eb
      .......43222558855555d4eeb44b4ee
      ......b422332ddd555222d4eebbb4be
      ......be22232ed55522332db4ebbbbe
      .....bde22222e555e22232edd4bbbbe
      .....b52e222e3555e22222eddd4ebee
      ....bd552eee355552e222e355544eee
      ....665dd5555555552eee355dd4deee
      ...6776555555555555555551554d4ee
      ...4885222555dddd6655551544d4eee
      ..b45522332555dd677611d444ddeee.
      ..4d5222232e55555881d44ddd4eee..
      .bdd5e22222e555115114d54d4ee....
      .b55d2e222e351144d1d55eeee......
      bd5ddd2eee3d444555dd4e..........
      b555115dddd55d544eede...........
      4511d444d5544ee...4de...........
      41d4555d4ee........44...........
      41554eede.......................
      44ee...4e.......................
      """),
    SpriteKind.food)
pizza.set_position(140, 100)

驴友花雕 发表于 前天 17:55

【花雕动手做】基于 Kitronik 可编程开发板之公主披萨

代码解析
1、创建玩家角色(公主)
python
mySprite = sprites.create(img("""..."""), SpriteKind.player)

controller.move_sprite(mySprite)

mySprite.set_stay_in_screen(True)
创建一个精灵,图像为像素风格的公主。

启用控制器移动(方向键或摇杆)。

限制角色在屏幕范围内活动,避免移出边界。

2、创建披萨精灵
python
pizza = sprites.create(img("""..."""), SpriteKind.food)

pizza.set_position(140, 100)
创建一个披萨图像的精灵,类型为 food。

设置其位置在屏幕右下角(坐标 140, 100)。

3、碰撞事件:玩家碰到披萨触发失败
python
def on_on_overlap(sprite, otherSprite):

    game.over(False)

sprites.on_overlap(SpriteKind.player, SpriteKind.food, on_on_overlap)
注册一个碰撞事件:当玩家角色与披萨发生重叠时,触发 game.over(False)。

False 表示游戏失败(通常显示失败动画或提示)。


驴友花雕 发表于 前天 17:58

【花雕动手做】基于 Kitronik 可编程开发板之公主披萨

图形编程参考实验程序


驴友花雕 发表于 前天 17:59

【花雕动手做】基于 Kitronik 可编程开发板之公主披萨

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



实验场景记录






页: [1]
查看完整版本: 【花雕动手做】基于 Kitronik 可编程开发板之公主披萨