查看: 3691|回复: 2

TurnipBit 开发接豆人小游戏

[复制链接]
  • TA的每日心情
    慵懒
    2018-1-6 09:01
  • 签到天数: 7 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    发表于 2017-12-18 15:18:49 | 显示全部楼层 |阅读模式
    分享到:
    最近入手了一款MicroPython的开发板TurnipBit,这个板子比较适合单片机入门,以及青少年编程,因为它有配备的在线图形编程。
    废话不多说,接下来就来说说如何使用TurnipBit开发板开发接豆人小游戏。

    准备工作
    ü  TurnipBit 开发板 1块
    ü  下载数据线 1条
    ü  接入网络的电脑 1台
    ü  在线可视化编程

    通过坐标点亮LED

    1TurnipBit背面有5*5LED点阵屏。通过前5个章节的学习,我们已经实现过显示内置图像和自定义图像的功能了。今天给大家介绍一种新方法——通过坐标(XY)点亮指定的LED灯。功能区点击显示,选择设置第XYLED的亮度。如下图:
    1.png

    通过上面的方法,我们就可以点亮指定的LED灯。接下来看一下TurnipBit背面的LED显示屏中每个点的坐标位置。如下图:
    turnipbit-led.png
    接豆人小游戏的开发

    2、我们用1个点亮的LED灯来表示接豆人。首先给它设定一个初识的位置,设置在第4行第3列(X=2Y=4)的位置,也就最后一行中间的位置。亮度设置范围:0(不亮)至9(最亮)之间的整数。如下图:
    2.png

    3、接豆人准备好了,接下来就要设定随机落下的豆子了。设定豆子从第一行某一个列上开始掉落。Y轴的值应该是从0不断递增到4的,X轴的值需要从0~4之间随机抽取,这时就需要用到随机数函数。
    新建一个变量x,用它来存储随机数函数返回的值,同时也是豆子X轴的值。如下图:
    3.png

    4、豆子的Y轴的值是从0~4有规律递增的,所以我们就用到循环里的【使用i从范围1100每隔1执行的循环拼插块】。将范围改为04。如下图:
    4.png

    5、我们将不断变化的i赋值给豆子的Y行。如下图:
    5.png

    6、接下来我们要实现豆子移动的效果。设定每隔350毫秒移动一行,而且还要记得要将上一个点亮的LED关闭,要不然就达不到移动的动画效果了。如下图:
    6.png

    7、随机掉落的豆子效果完成了,接下来我们要完成接豆人的移动效果。接豆人只需要进行水平方向的左右移动,所以它的X列的值是需要动态变化的,先新建一个变量row存放接豆人X列的值。如下图:
    7.png

    8、实现接豆人的移动需要使用按键AB。设定当按键A按下时,接豆人向左移动一格(row-1);当按键B按下时,接豆人向右移动一格(row+1)。如下图:
    8.png

    9、还需要再考虑一个问题,当row的值大于4或者row的值小于0时的情况。所以,我们设定当row的值大于4时,重新给row赋值0;当row的值小于0时,重新给row赋值4。这样的话,接豆人就可以循环的移动了。如下图:
    9.png

    10、接豆人和豆子的移动轨迹都设定好了,接下来我们就要判断当豆子掉落到最后一行时,接豆人所处的列是都和豆子的列是一致的呢?当一致时,就说明接豆人接豆成功了;当不一致时,说明接豆人接豆失败了。如下图:
    10.png

    11、下面我们来完成计分的功能,设定共进行3局,接到豆子一次加1分,没有接到不加分。最后3局结束后,显示最终分数。接豆人小游戏的整体拼插图如下:
    11-1.png
    11-2.png



    11-2.png
    11-1.png
    10.png
    9.png
    8.png
    7.png
    6.png
    5.png
    4.png
    3.png
    2.png
    turnipbit-led.png
    1.png
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2018-1-6 09:01
  • 签到天数: 7 天

    连续签到: 1 天

    [LV.3]偶尔看看II

     楼主| 发表于 2017-12-18 15:20:21 | 显示全部楼层
    TurnipBit官网:www.turnipbit.com
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2018-1-6 09:01
  • 签到天数: 7 天

    连续签到: 1 天

    [LV.3]偶尔看看II

     楼主| 发表于 2017-12-18 15:20:52 | 显示全部楼层
    在线可视化编程编辑器:http://turnipbit.com/PythonEditor/editor.html
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-4-27 12:20 , Processed in 0.128767 second(s), 20 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.