鸿蒙分布式小车游戏,可联机对战!

玩技站长
玩技站长
管理员, Keymaster
11056
文章
0
粉丝
测试分享评论442字数 886阅读2分57秒阅读模式

鸿蒙分布式小车游戏,可联机对战!插图

01文章源自玩技e族-https://www.playezu.com/26440.html

鸿蒙分布式小车游戏 Demo 详情文章源自玩技e族-https://www.playezu.com/26440.html

此应用是一个基于 HarmonyOS 的软件和硬件相结合的控制小车的小游戏应用。
文章源自玩技e族-https://www.playezu.com/26440.html

手机端 APP 用于控制鸿蒙小车,鸿蒙小车端被手机 APP 控制。其中使用了两部 P40 手机,两辆 HI3861 鸿蒙小车。
文章源自玩技e族-https://www.playezu.com/26440.html

可以单独使用一部手机控制任何一辆鸿蒙小车,称为单人模式;也可以两部手机各控制一辆鸿蒙小车进行比赛,称为对战模式。文章源自玩技e族-https://www.playezu.com/26440.html

02文章源自玩技e族-https://www.playezu.com/26440.html

小车对战 APP 使用说明文章源自玩技e族-https://www.playezu.com/26440.html

鸿蒙小车的连接和配网步骤如下:文章源自玩技e族-https://www.playezu.com/26440.html

首先是启动鸿蒙小车,按下 user 键,小车会开启一个 WiFi 热点。
文章源自玩技e族-https://www.playezu.com/26440.html

 文章源自玩技e族-https://www.playezu.com/26440.html

控制端手机成功连接该 WiFi 热点后,鸿蒙小车会把热点名字显示在 OLED 屏幕上,如下图:

鸿蒙分布式小车游戏,可联机对战!插图1

然后打开手机 APP,手机 APP 使用纯鸿蒙 API 开发,打开应用后有背景音效,如下图:

鸿蒙分布式小车游戏,可联机对战!插图2

在单人模式下,进入 APP 首页选择“单人”,会进入到选择小车的页面,通过左右滑动来选择对应编号的小车。

也就是说手机可以控制任何一辆鸿蒙小车:

鸿蒙分布式小车游戏,可联机对战!插图3

选定后小车后,再给选择好的鸿蒙小车配置第三方 WiFi 热点,输入 WiFi 名和密码。

小车会根据输入的 WiFi 名和密码连接上对应的 WiFi,同时小车会关闭自身 WiFi 热点。

此时,控制端手机会回退到原本链接的 WiFi(需要与鸿蒙小车连接在同一WiFi)。

这样多部手机和多个小车都连上指定的热点,多设备间就可以利用鸿蒙分布式特性进行交互数据了,如下图:

鸿蒙分布式小车游戏,可联机对战!插图4
完成配网后,小车会将自己的 IP 地址显示到 OLED 屏幕上,如下图:
鸿蒙分布式小车游戏,可联机对战!插图5
有了鸿蒙小车的 IP 地址,在手机 APP 中上输入这个 IP 地址,接下来就可以用手机控制鸿蒙小车运动了。
鸿蒙分布式小车游戏,可联机对战!插图6
鸿蒙分布式小车游戏,可联机对战!插图7

APP 控制界面说明:

  • 左下角绿色按钮,模拟油门,按下它,小车开始前跑。

  • 上面的红色按钮为停止。

  • 右方的上下左右:上为加速,下为后退,左右分别是左转和右转。

  • 右方的按钮必须同时按下油门,并且都不抬起才能生效,需要用到多点触控。

对战模式:手机使用了鸿蒙特有的分布式数据库进行不同手机间的数据实时共享。

利用分布式数据库,在对战模式下,比如:A 手机选择了编号 28882 号小车,B 手机能马上得到弹框通知,避免选冲突,在下次进入后,由于分布式数据库已经记住了对战模式下各自的选择,页面将屏蔽掉对手已经选择的小车。

比赛结果同样使用的是分布式数据库保存,并且对分布式数据库实时监控。

对战模式下,参赛小车中任何一辆率先到达终点,小车下的传感器将感应到终点线,继而向手机 APP 发送自己的小车编号。

手机收到编号立即判断那个小车获取胜利,并且在所有参赛手机上弹出信息,通报胜利者,并且停止所有参赛小车的行进。
鸿蒙分布式小车游戏,可联机对战!插图8

03

设计思路

手机端设计思路:

鸿蒙分布式小车游戏,可联机对战!插图9

小车端设计思路:
鸿蒙分布式小车游戏,可联机对战!插图10
项目源代码见原文附件:
https://harmonyos.51cto.com/posts/4735
 最后更新:2022-7-25
匿名

发表评论

匿名网友
确定

拖动滑块以完成验证