CocosCreator 制作微信小游戏排行榜,超越好友,分享功能

CocosCreator 制作微信小游戏排行榜,超越好友,分享功能在每局游戏结束时 用来显示玩家在好友中的排行 这个需要在微信提供的开放数据域中完成 微信为防止数据外泄 特地提供了开放数据域 开发者只能在子域获取数据 不能上传到外部 微信开放数据域中计算好排行榜数据 并显示 渲染到主域的页面上 需要在主域画布下 创建一个和画布大小相同的空物体 挂载组件子域的画面就是通过该组件渲染到挂载该组件的物体上 有点类似 Unity 的 RawIm

在每局游戏结束时,用来显示玩家 在好友中的排行,这个需要在微信提供的开放数据域中完成。

CocosCreator 制作微信小游戏排行榜,超越好友,分享功能

微信为防止数据外泄,特地提供了开放数据域。开发者只能在子域获取数据,不能上传到外部。

微信开放数据域中 计算好排行榜数据,并显示,渲染到主域的页面上。

需要在主域画布下,创建一个和画布大小相同的空物体,挂载组件

CocosCreator 制作微信小游戏排行榜,超越好友,分享功能

子域的画面 就是通过该组件渲染到挂载该组件的物体上,有点类似Unity 的RawImage。

这里使用的是2.0.10版本,子域工程的按钮,在测试的时候 无法点击。所以在主工程相同位置,制作了一个按钮,来代替子域中对应位置的按钮。子域和主工程画布大小一致。

CocosCreator 制作微信小游戏排行榜,超越好友,分享功能

通过该组件 屏蔽事件的点击。

在主工程中,通过 wx.postMessage 向子域传递消息。子域中 通过wx.onMessage 接收主域的消息,根据消息类型

做出对应的处理。

1.提交游戏分数:先通过wx.getUserCloudStorage 获取用户的云存储

 通过wx.setUserCloudStorage  提交玩家的成绩

2.获取好友成绩,处理成排行榜

 微信接口:wx.getFriendCloudStorage

获取到数据,是没有顺序的,需要自己经过排序,再来显示到排行榜上。

3.超越好友提示功能

我们可以在游戏一开始 获取到好友分数和头像,分别用数组 存起来,当你的分数增加的时候,和数组中最后一名玩家

比较,每次超越 一名好友,将该好友从数组尾部弹出,每次重新开始游戏,更新重新获取数据。

4.分享

分为主动分享 和 被动分享

被动分享:微信小游戏右上角菜单里面

通过 wx.showShareMenu 接口,显示分享功能,

通过 wx.onShareAppMessage 接口  设置 分享主题title,以及分享的图片,传入图片的地址

主动分享: 用户主动拉起好友 通讯录 分享:

wx.shareAppMessage 接口

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/229778.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午3:54
下一篇 2026年3月16日 下午3:54


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号