查看: 294|回复: 0

升级版2关卡:Gamepad+Mind+制作停车场游戏

[复制链接]
本帖最后由 hnyzcj 于 2019-1-16 10:54 编辑

      第一版:http://makelog.dfrobot.com.cn/project/article?aid=883
      2019DFrobot正式发布了他们的一款软件——Mind+Mind+是一款基于Scratch3.0开发的图形化编程软件,支持ArduinoMicro:bit等各种开源硬件,只需要拖动图形化指令集即可完成编程,还可以使用python等高级编程语言。不过我更喜欢Gamepad+Mind+这种玩法,通过两者组合制作停车场游戏。
1图片1.png
作品展示:
图片2.png 图片3.png
功能设计:
    1.用手柄Up和Down按钮控制小车左右移动;X,Y按钮作为左转和右转方向控制键;A按钮定义为向后选关,一旦按下,小车自动跳到下一关卡,B按钮定义为向前选关按钮,一旦按下,小车自动跳到前一关卡。
    2.用遥控手柄控制小车开进停车位,碰到绿色的草坪,会提示“game over”并伴随相应的音乐,返回初始位置继续游戏。当小车正确驶入停车位,会提示“win”并伴随相应的音乐,同时进入下一关。
      3.目前我只做了2关,有兴趣的玩家们可以继续完善。

项目器材:
   1.micro:bit gamepad 遥控手柄               1
     2.micro:bit 编程入门开发板               1

制作过程:
   
一、游戏界面设计及代码编写
       1.舞台设计:本游戏设置了2道关卡,因此我在背景中绘制了2张背景和1张胜利的背景。关卡背景主要由灰色道路与绿色草坪组成,同时用白色线条标注出道路情况。绘制时我主要使用了矩形和线段工具绘制道路和草坪。
图片4.png
对于草坪的绘制,可以通过矩形叠加,以及通过工具箱中变形工具可以将矩形形变,最终得到不规则形状的草坪。如图4中的草坪效果。同样道理绘制第二关背景。

程序编写:
定义变量level为关卡变量,当level的数值代表关卡数。广播plevel,作为公用变量传播游戏的状态。具体程序如下图5所示。
图片5.png
2.停车位角色:停车位角色carhome,用黄色底纹配上白色线条组成。如图6所示。
图片6.png
程序编写:
    本游戏环节中有2个关卡,所以我们设置每关开始时,停车位的位置。具体程序如图7所示。
图片7.png
3.游戏logo角色
本游戏的logoMind+标志,以导入图片方式导入到编辑区域。具体程序如图8所示,在不同的停车场,logo出现的地方不一样。
图片8.png
4.car角色:进入角色设计界面用圆形工具、矩形工具、变形工具下图所示的小车。如图9所示。
图片9.png
程序编写
小车初始化,定义变量km/h为移动的速度,如图10所示。
图片10.png
小车控制部分:
    由于使用gamepad+microbit方式,需要添加microbit指令集,请按图11所示的步骤完成MICROBIT指令集的添加。
图片11.png
P1,P2代表X,Y按钮,用于控制小车转向,程序如图12所示。
图片12.png

P8,P13代表Up,Down按钮,用于控制小车进退,程序如图13所示。
图片13.png
选关程序,通过按钮A,按钮B控制选关如图14所示。
图片14.png
小车主程序:
程序启动后,小车进入固定位置,准备发车。这里对碰到草坪和正确驶入停车位,做出了相应的处理。首先对小车判断是否碰到停车位carhome,这里尤其要注意下碰到了停车位,并不代表顺利过关,因为碰到并不代表小车正确的停放在停车位上。那么我们这里又增加了判断条件没有碰到灰色区域。此时播放完成的声音,说win2秒,并将等级LEVEL1,广播plevel;如果碰到绿色草坪,播放咚咚当音效,说game over1秒,并在0.1秒内回到初始位置重新开始游戏。如图15所示。
图片15.png
二、连接手柄
     通过USB连接线连上电脑,进入Mind+界面后,点击“连接设备”,先安装串口驱动,连接设备。驱动安装成功后需要对串口进行设置。
图片16.png
连接设备成功后,出现下图17所示界面,此时执行的模式时“实时执行”。
图片17.png
三、游戏测试
运行游戏,测试游戏的基本功能。
游戏失败gameover,如图18
图片18.png
游戏过关win,如图19
图片19.png
图片20.png


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
wifi气象站

硬件清单

btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2019 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail