鸿蒙分布式小车游戏Demo

Posted HarmonyOS技术社区

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了鸿蒙分布式小车游戏Demo相关的知识,希望对你有一定的参考价值。

一、描述Demo详情


此应用是一个软硬结合的控制小车的小游戏应用,手机端app用于控制,鸿蒙小车端被控制。使用了两部P40手机,两辆HI3861鸿蒙小车,可以单独使用一部手机控制任何一辆鸿蒙小车,称为单人模式,也可以两部手机各控制一辆小车进行比赛,对战模式。


二、app使用详情


首先是启动小车,按下user键,小车会将小车自己做为一个wifi热点,给手机链接,并把热点名字显示在OLED屏幕上:

然后打开手机app,手机app使用纯鸿蒙api开发,打开应用后有背景音效:

在单人模式下,手机可以控制任何小车,进入app首页选择“单人”,会进入到选择小车的页面,通过左右滑动选择对应的编号的小车:

选定后,可以给选择小车配置第三方wifi热点,输入wifi名和密码,小车会根据输入的wifi名和密码链接上对应的wifi,同时停止掉小车本身的wifi热点,手机会回退到原本链接的wifi(就是刚刚给小车配置的wifi),这样多部手机和多个小车都连上指定的热点,多设备间就可以利用鸿蒙分布式特性进行交互数据了:

完成配网后,小车会将自己的ip地址显示到OLED屏幕上,给手机下步操作:

 

有了小车的ip地址,输入这个ip地址,接下来就可以用手机控制小车运动了:

左下角绿色按钮,模拟油门,按下它小车开始前跑,上面的红色按钮为停止,右方的上下左右,上为加速,下为后退,左右分别是左转和右转,右方的按钮必须同时按下油门,并且都不抬起才能生效,是多点触摸做的。

对战模式,手机使用了鸿蒙特有的分布式数据库进行不同手机间的数据实时共享,利用分布是数据库,在对战模式下,比如:A手机选择了编号28882号小车,B手机能马上得到弹框通知,避免选冲突,在下次进入后,由于分布式数据库已经记住了对战模式下各自的选择,页面将屏蔽掉对手已经选择的小车。比赛结果同样使用的是分布式数据库保存,并且对分布式数据库实时监控,对战模式下,参赛小车中任何一辆率先到达终点,小车下的传感器将感应到终点线,继而像手机app发送自己的小车编号,手机收到编号立即判断那个小车获取胜利,并且在所有参赛手机上弹出信息,通报胜利者,并且停止所有参赛小车的行进。

 

手机端设计思路:

小车端设计思路:

 

文章相关附件可以点击下面的原文链接前往下载

原文链接:   https://harmonyos.51cto.com/posts/4735#bkwz


想了解更多关于鸿蒙的内容,请访问:

51CTO和华为官方战略合作共建的鸿蒙技术社区

https://harmonyos.51cto.com/#bkwz


以上是关于鸿蒙分布式小车游戏Demo的主要内容,如果未能解决你的问题,请参考以下文章

OpenHarmony 样例——鸿蒙小车开发

鸿蒙系统系列教程3-鸿蒙OS的技术特征讲解

打擂台了,华为鸿蒙是分布式系统,小米MIUI13有分布式菜单

同为分布式操作系统,Laxcus和鸿蒙为什么不同?

鸿蒙系统是啥

鸿蒙OS带来了哪些体验升级?