GameMode.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. // const gConfig = require('Global/GlobalConfig');
  2. cc.Class({
  3. extends: cc.Component,
  4. properties: {
  5. WXSubContextView: {
  6. // ATTRIBUTES:
  7. default: null, // The default value will be used only when the component attaching
  8. // to a node for the first time
  9. type: cc.Node, // optional, default is typeof default
  10. serializable: true, // optional, default is true
  11. },
  12. },
  13. onLoad() {
  14. //初始化左上角分享按钮信息
  15. WeChat.onRightUpShare();
  16. },
  17. //主动调用分享按钮
  18. onShare() {
  19. WeChat.onShareFunction();
  20. },
  21. start() {
  22. //设置主域排行榜节点
  23. this.subContextView = this.WXSubContextView.getComponent(cc.WXSubContextView)
  24. this.subContextView.enabled = false;
  25. this.WXSubContextView.active = false;
  26. },
  27. //发送信息到开放数据域
  28. //记录数据到微信后台
  29. onSendMessageToOpendata() {
  30. //时间戳
  31. let updateTime = parseInt(new Date().getTime() / 1000);
  32. let _value = JSON.stringify({
  33. "wxgame": {
  34. "score": Math.floor(50000 * Math.random()),
  35. "update_time": updateTime
  36. }
  37. });
  38. let arr = new Array();
  39. arr.push({ key: "score", value: _value });
  40. let openDataContext = wx.getOpenDataContext()
  41. //设置开放域数据
  42. openDataContext.postMessage({
  43. type: 'SET',
  44. data: arr,
  45. timer: updateTime
  46. })
  47. },
  48. //显示排行榜
  49. onShowRanking() {
  50. //时间戳
  51. let updateTime = parseInt(new Date().getTime() / 1000);
  52. //获取排行榜对应的信息
  53. let getArr = new Array();
  54. getArr.push("score");
  55. let openDataContext = wx.getOpenDataContext();
  56. //获取开放域数据
  57. openDataContext.postMessage({
  58. type: 'GET',
  59. data: getArr,
  60. timer: updateTime
  61. })
  62. //在wxsubcontextview 节点刷新开放域贴图
  63. this.WXSubContextView.active = true;
  64. this.subContextView.enabled = true;
  65. this.subContextView.update();
  66. },
  67. //关闭排行榜显示
  68. onHideRanking() {
  69. this.WXSubContextView.active = false;
  70. this.subContextView.enabled = false;
  71. },
  72. //保存游戏数据
  73. onSaveGame(){
  74. //时间戳
  75. let updateTime = parseInt(new Date().getTime() / 1000);
  76. //保存测试的数据
  77. let gamedata = {
  78. Diamond : 10,
  79. RespectIcon : 0,
  80. golden:Math.floor(100000*Math.random()),
  81. due:updateTime
  82. }
  83. WeChat.onAddGameData(gamedata);
  84. },
  85. });