[资料]【HarmonyOS HiSpark AI Camera试用连载 】2048小游戏

阅读量0
1
3
如下:
录制.gif
这是个非常老的游戏了,我最早是在linux下玩到的,只有一个简单字符界面,但比较考验智力和运气,很长一段时间只能玩到256;后来掌握规则以后,就很轻松到2048了。之前曽在windows和安卓上都做过类似开发,加上漂亮的UI,这次试用AIC,想回归原始,直接用纯字符来做界面。
一、UI设计
说是UI设计,起始很简单,说穿了就是printf打印字符和getchar获取输入。
在实现中,发现使用system(“clear”);可通过编译,但无法实现刷新功能,运行时提示错误,解决方法是使用printf("33[2J");替代。
getchar有个小问题,就是不能直接检测输入的字符,需增加回车,在@HonestQiao 的提示下,使用
微信图片_20201130181643.png
依然有些问题,后续准备进一步调试。
二、规则实现
定义数组arr[16]用于记录填入的数字,先判断移动方向,使用合并函数void merge(),将需要合并的数字加起来,再通过move_go()函数移动数字。判断当填满字符后,游戏结束。
三、目前的缺陷
1、判断ctrl-z似乎有问题,退出主函数main()需要再调试。
2、因为时间函数time()调用不成功,没有给rand()做一个临时种子,所以每次rand()的结果是可推测的。
3、因为串口终端没有找到真正“清屏”的功能,只能通过滚屏来清屏,所以,会看到屏幕滚动条不断下移。
附源代码及编译结果
2048.rar
(5.14 KB, 下载次数: 9)

回帖

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
链接复制成功,分享给好友