转载请以链接形式注明文章来源(MicroPythonQQ技术交流群:157816561,公众号:MicroPython玩家汇)

  0x00前言

  下面带大家用TurnipBit开发板实现一个简单的小游戏-掷骰子。TurnipBit是一款口袋式可视化编程开发板,拖拖拽拽零基础也能玩编程!

  0x01实现过程

  1. 当我们按下A后,显示屏不停切换显示1-6之间的数,模拟骰子的滚动

  2. 然后我们按下B,显示屏定住显示B按下时的数字

  0x02开发步骤

  打开我们的TurnipBit在线图形编辑器。

  http://www.turnipbit.com/PythonEditor/editor.html#

  1、我们创建一个变量用来存储显示的数字。

  选择[变量]->[创建变量]->输入变量名num(可自拟)。

  2、我们给num设置一个初始值1(num=1)。

  选择[变量]->[赋值num到](默认值0)。

  选择[数学]->,和[赋值num到]拼插起来,修改数值为1。

  3、根据上面的步骤,我们再创建一个新标量flag=1,它用来判断屏幕是不断切换数字显示,还是定住显示一个数字。

  4、接下来我们写整个程序的主体,先放入一个循环,条件永远真,让程序一直运行。

  选择[循坏]->[重复当[]执行]。

  选择[逻辑]->[真],与循环拼插对接起来。

  5、在循坏体内添加执行的内容。逻辑判断flag的值。

  选择[逻辑]->[如果xx执行xx]放到循坏体内。

  6、将判断条件[flag==1]添加到逻辑if判断体中。

  7、[flag==1]为真时,给num赋值1-6的随机数并显示。

  选择[变量]->[赋值num到xx]放到逻辑执行体中。

  选择[数学]->[从1到100之间的随机整数],与[赋值num到xx]拼接起来,并修改为从1到6之间的随机数。

  8、显示num的值。

  在显示之前,我们先将显示内容清除。

  选择[显示]->[清除显示内容]放到逻辑执行体的下面与其对接。

  选择[显示]->[显示图像]放到[清除显示内容]下面与其对接。

  选择[变量]->[num],与[显示图像]拼插一起。

  9、接下来我们来判断按键A是否被按下。

  根据上面的步骤,添加1个逻辑判断块,在显示图像的下方与其对接。

  选择[按键]->[按键A被按下],放到刚才新添加的逻辑判断的条件中。

  当按键A被按下时,我们赋值flag=1,即不断的动态改变num的值并显示,相当于骰子正在滚动。

  10、根据上一步,我们再下方添加判断按键B是否被按下,赋值flag=0,即定住显示num的值,相当于骰子停住的那一刻。

  11、接下来我们添加一个延时,不要让数字切换的那么快。

  选择[TurnipBit]->[睡眠1000毫秒]放到显示图像的下面,内部数字修改为150。

  12、基本的代码已构建完毕,大家先别急着下载hex执行,里面还有一个小问题需要解决。

  大家可以看到代码区内的[display.show(num)]这句代码,display.show()方法内的参数必须是String(字符串)类型的变量,而我们的num是int类型的,需要转换。

  图像编辑区没有提供类型转换的块,所以我们需要切换到代码编辑区,手动添加。

  (注意:一旦切换到编辑区,将无法撤回到原先的图像逻辑区)

  点击右上角菜单栏[可视化编程]。

  将[display.show(num)]修改为[display.show(str(num))]

  13、接下来下载hex文件到TurnipBit中,一起掷骰子吧。

TurnipBit开发板掷骰子小游戏DIY教程实例的更多相关文章

  1. 【鸿蒙开发板试用报告】用OLED板实现FlappyBird小游戏(中)

    小伙伴们久等了,在上一篇<[开发板试用报告]用OLED板实现FlappyBird小游戏(上)>中,我们本着拿来主义的原则,成功的让小鸟在OLED屏幕上自由飞翔起来,下面我们将加入按钮交互功 ...

  2. TurnipBit开发板“趣味赛”:平衡力大比拼

    让孩子在快乐自由的游戏中培养编程思维 平衡力大挑战是我们经常经常玩的的一个小游戏,脑补画面的话比较常见的是单腿平衡力大比拼,摇晃幅度小者胜利.游戏好玩归好玩,但是想要公平判断胜负却不容易.下面就教大家 ...

  3. TurnipBit-MicroPython开发板:跟孩子一起DIY跳动的心

    天是越来越热了,小心脏也是越跳越快啊,为了表达现在激动的心情,必须做个激动的心开始跳动.紧接着就开始带领大家做个激动的心. 首先说说要借助的平台,这次仅仅需要借助一块TurnipBit开发板. Tur ...

  4. .Net Core ORM选择之路,哪个才适合你 通用查询类封装之Mongodb篇 Snowflake(雪花算法)的JavaScript实现 【开发记录】如何在B/S项目中使用中国天气的实时天气功能 【开发记录】微信小游戏开发入门——俄罗斯方块

    .Net Core ORM选择之路,哪个才适合你   因为老板的一句话公司项目需要迁移到.Net Core ,但是以前同事用的ORM不支持.Net Core 开发过程也遇到了各种坑,插入条数多了也特别 ...

  5. python小练习:使用循环和函数实现一个摇骰子小游戏。游戏规则如下:游戏开始,首先玩家选择Big or Small(押大小),选择完成后开始摇三个骰子,计算总值,11<=总值<=18为“大”,3<=总值<=10为“小”。然后告诉玩家猜对或者是猜错的结果。

    python小练习:使用循环和函数实现一个摇骰子小游戏.游戏规则如下:游戏开始,首先玩家选择Big or Small(押大小),选择完成后开始摇三个骰子,计算总值,11<=总值<=18为“ ...

  6. 从零开始开发一款H5小游戏(二) 创造游戏世界,启动发条

    本系列文章对应游戏代码已开源 Sinuous game 上一节介绍了canvas的基础用法,了解了游戏开发所要用到的API.这篇文章开始,我将介绍怎么运用这些API来完成各种各样的游戏效果.这个过程更 ...

  7. 从零开始开发一款H5小游戏(三) 攻守阵营,赋予粒子新的生命

    本系列文章对应游戏代码已开源 Sinuous game. 每个游戏都会包含场景和角色.要实现一个游戏角色,就要清楚角色在场景中的位置,以及它的运动规律,并能通过数学表达式表现出来. 场景坐标 canv ...

  8. 【鸿蒙开发板试用报告】用OLED板实现FlappyBird小游戏(上)

    总是做各种Demo,是时候做个什么小应用来练练手了.踌躇了很久,果然还是搞个小游戏才有意思.想到几年前风靡全球的FlappyBird,一个屏幕一个按钮就足够了,正好适合.OLED屏幕.按键的驱动已经有 ...

  9. iTOP-4412开发板-串口转接小板的使用文档

    本文档介绍如何使用 迅为iTOP-4412 精英版如何使用串口转接板,串口小板如下所示.和串口转接板模块相关的资料如下:“iTOP-4412-Android-串口测试文档(升级版)_V2.X.zip” ...

随机推荐

  1. 你不知道的javaScript上卷(第一章 作用域是什么)

    在写这篇博客时这本书我已经是看过一遍了,为了加深印象和深入学习于是打算做这系列的前端经典书籍导读博文,大家如果觉得这本书讲的好可以自己买来看看,我是比较喜欢看纸质版书的,因为这样才有读书的那种感觉. ...

  2. 刚从it培训班出来的学生如何走向工作岗位

    大家好,这是我本人在博客园的第一篇博文. 相信很多人都是从 it 培训班学习然后加入到程序员这个大家族,或多或少,有些人会和博主有一样的感受,所以此篇博文我们不讨论技术,博主也是刚从培训班坑里跳出来正 ...

  3. Scala入门系列(十一):模式匹配

    引言 模式匹配是Scala中非常有特色,非常强大的一种功能. 类似于Java中的switch case语法,但是模式匹配的功能要比它强大得多,switch只能对值进行匹配,但是Scala的模式匹配除了 ...

  4. JavaWeb核心技术学习 - 1.从JDBC说起

    作者:java1to3链接:http://www.cnblogs.com/java1to3/著作权归作者所有.未经作者本人同意,禁止一切转载.商业或非商业转载请联系作者获得授权并请注明出处. ・JDB ...

  5. android UI布局

    一.设置反复背景 在drawable目录下建一个mybackground.xml文件 在文件里写入: <?xml version="1.0" encoding="u ...

  6. TCP/IP具体解释--UDP数据报中的IP分片

    1.UDP首部 2.UDP分片 在第二章,讲链路层是,提到过以太网.刨除数据帧帧头.最多传输的长度为1500.也就是说,假设一个ip数据报,长度大于1500,则须要分片. 分片方法: 在ip头中3位标 ...

  7. BZOJ 1003 [ZJOI2006]物流运输trans SPFA+DP

    题意:链接 方法:SPFA+DP 解析:挺好的题目.因为数据范围较小所以用这样的方式能够搞,只是也是挺不好想的. 我们定义cost(i,j)表示从第i天走到第j天运用同一种方式的最小花费,然后因为数据 ...

  8. Vue.js 基本语法

    插值 Html 使用 v-html 指令用于输出 html 代码: <div id="app"> <div v-html="message"& ...

  9. dubbo,eclipse,服务报错

    运行e3-manager报错找不到类,更新了子模块,但e3-manager下没有更新:

  10. iKcamp|基于Koa2搭建Node.js实战(含视频)☞ HTTP请求

    POST/GET请求--常见请求方式处理