内容介绍
基于Kitronik ARCADE MakeCode的贪吃蛇游戏
一、硬件介绍
Kitronik ARCADE是一款功能丰富的可编程游戏手柄,搭配微软MakeCode Arcade编辑器一起使用,可使用图形化进行编程,学习制作游戏。
该手柄和经典的游戏机非常相似,具有上下左右及AB共6个操作按键,并带有1块全彩LCD屏幕。
二、软件介绍
本人使用图形化编程工具设计了一款简单的贪吃蛇游戏,游戏界面如下:
主要代码说明:
2.1开机程序
开机后,首先调用子函数BuildWall创建围栏,蛇若撞上围栏,游戏结束。
然后,调用放置食物子函数PlaceFood,在围栏范围内,随机生成一个Food色块。
接着,创建两个精灵,分别是红色的蛇头和绿色的蛇尾,并依次将它们放到名称为snake的精灵数组里。
最后,设置snake的初始长度为2,初始移动方向为向右。蛇的移动方向变量是MoveDirection,值1-4分别表示蛇头向上、向下、向左、向右运动。
2.2按键事件程序
当按下上下左右不同按键时,切换蛇头的移动方向。比如,当按下上时,如果蛇头当前是在左右方向移动,则切换为向上移动。其它按键类似。
2.3主程序
主程序里主要包括3部分,控制蛇增长的子函数SnakeLonger,控制蛇运动的子函数SnakeMove,及控制蛇吃到食物的得分程序。
2.4 游戏结束
当蛇装上围栏,或蛇吃到自己身体时,游戏结束。
2.5 子函数说明
在上下左右的边界,绘制出Wall的范围,类型为Enemy敌人。
在墙体范围以内,随机生成黄色色块Food。
通过循环函数,执行蛇体的运动。控制蛇体的运动时,从蛇尾开始操作,蛇尾为snake精灵数组的最后一个元素,将它的位置设为它前面一个元素的位置。然后再依次操作下一个元素。即数组后面的元素,都跟随它前面的元素运动。最后。蛇头根据当前方向来运动。
当蛇吃到食物时,设置一个需要变长的标志位。这时为snake精灵数组增加一个元素,并将它插入到蛇头的后面。然后把标志位清零。
蛇头运动方向函数,蛇头根据当前运动方向的不同,不断改变它的坐标值x或y,控制蛇头运动。
三、效果展示
因录视频屏幕反光较为严重,图片效果不便区分颜色,详见视频中模拟器运行效果。
刚运行时,蛇的长度为2,蛇头为红色、蛇尾为绿色,蛇自动向右运动。
通过上下左右控制蛇头移动,当蛇每吃到1个食物,蛇身增加1节,得分加1,蛇身为黄色。
当蛇撞到墙壁或自己身体时,游戏结束。
屏幕特写
四、心得体会
本次开发,主要使用了MakeCode图形化编程方法,直观形象,不但适合发烧友,也适合青少年学习编程。编程比较方便,无需安装编程软件,使用浏览器即可实现编程及仿真。程序的维护也比较新颖,只需将保存的文件拖动到编程网页即可。
当然,开发板在使用中也出现了一些问题。反复出现过显示屏花屏、白屏以及开机时显示画面左右颠倒的现象,但放置几天之后,居然又自动恢复了。具体原因还需要相关技术人员分析。
花屏
白屏
颠倒屏