Global.js 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291
  1. const BuildingManager = require("../utils/BuildingManager");
  2. const ShareAction = require('./ShareAction');
  3. const AlertManager = require('../utils/AlertManager');
  4. const Platform = require('../common/Platform');
  5. const WechatShareType = require('../utils/GameEnum').WechatShareType;
  6. window.GameGlobal = {
  7. // 建筑管理
  8. BuildingManager: BuildingManager.instance,
  9. debug: false,
  10. ver: 100, //游戏版本号发版时需要核对
  11. isCheck: false,
  12. isMineEnter: false,
  13. /**
  14. * 点击别人分享的链接需要进行的操作 查看群排行
  15. */
  16. shareType: ShareAction.NONE,
  17. /**
  18. * 点击别人分享的链接获取到这个用户的uid,默认-1
  19. */
  20. shareUid: -1,
  21. //SystemInfo
  22. os: 1,//1 android,2 ios
  23. channel: null,
  24. user: null,
  25. /// 游戏是否退出到后台
  26. isOnHide: false,
  27. homeUpdate: true,
  28. wechatScoreKey: 'buildingLevel',
  29. // 开发中的城市Id
  30. devCityId: 1,
  31. buildRes: null,
  32. prefabsRes: null,
  33. starAvatarRes: null,
  34. starSpineRes: null,
  35. needLogin: false,
  36. /// 最后一个缩短技能cd的技能等级
  37. rcdSkillLevel: 0,
  38. //是否已领取当天签到奖励
  39. isSignAward: false,
  40. //是否已领取我的小程序奖励
  41. appletAward: false,
  42. //判断是否使用本地数据
  43. localData: false,
  44. //已签到次数
  45. signCount: 0,
  46. //分享出去的群id
  47. shareTicket: '',
  48. //通用网络请求提示框
  49. commonAlert: AlertManager,
  50. //是否点击过分享
  51. clickShare: false,
  52. //是否忽略分享成功
  53. isIgnoreShareStatus: false,
  54. gameShareType: WechatShareType.None,
  55. //当前设备屏幕尺寸
  56. winSize: {height: 0, width: 0},
  57. //好友助力剩余使用时间:当为0时是没有使用
  58. friendRewardCdTime: 0
  59. };
  60. // if (cc.sys.platform === cc.sys.WECHAT_GAME) {
  61. // wx.onShow(({scene, query, shareTicket }) => {
  62. // if (typeof wx.getUpdateManager === 'function') {
  63. // const updateManager = wx.getUpdateManager();
  64. // updateManager.onCheckForUpdate(function (res) {
  65. // // 请求完新版本信息的回调
  66. // console.log('hasUpdate: ' + JSON.stringify(res.hasUpdate));
  67. // })
  68. // updateManager.onUpdateReady(function () {
  69. // // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
  70. // updateManager.applyUpdate();
  71. // })
  72. // updateManager.onUpdateFailed(function () {
  73. // // 新的版本下载失败
  74. // })
  75. // }
  76. // //进入游戏的场景值
  77. // console.log('scene ' + scene + '==============================game ===============================');
  78. // if (scene == 1104) {
  79. // Global.isMineEnter = true; //从我的小程序进入游戏
  80. // } else {
  81. // Global.isMineEnter = false; //从我的小程序进入游戏
  82. // }
  83. // console.log('Global onShow' + JSON.stringify(query) + '======================================');
  84. // if (query != undefined && query != null) {
  85. // if (typeof query == "string") {
  86. // query = JSON.parse(query);
  87. // }
  88. // Global.shareType = query.shareType;
  89. // if (Global.shareType == ShareAction.SHOW_GROUP_RANK) {
  90. // if (shareTicket != undefined && shareTicket != null) {
  91. // Global.shareTicket = shareTicket;
  92. // GameEvent.fire(GameNotificationKey.GameShowGroupRank);//处理通过点击分享链接进入游戏的查看群排行榜
  93. // } else {
  94. // Global.shareTicket = '';
  95. // }
  96. // }
  97. // if (query.uid != undefined && Global.shareType == ShareAction.INVITE_FRIEND) {
  98. // Global.shareUid = query.uid;
  99. // GameEvent.fire(GameNotificationKey.ProcessShareAction);//处理通过点击分享链接进入游戏的各种操作,加好友.....
  100. // }
  101. // }
  102. // // console.log(query.from, shareTicket);
  103. // //// 如果是从后台到前台
  104. // if (Global.isOnHide) {
  105. // Global.isOnHide = false;
  106. // //客户端优先刷新技能使用情况
  107. // GameEvent.fire(GameNotificationKey.GameSkillOnHide);
  108. // /// 发通知更新跟定时器相关的数据
  109. // GameEvent.fire(GameNotificationKey.GameShowNotificationKey);
  110. // if (Global.clickShare) {
  111. // let onHideTime = cc.sys.localStorage.getItem('onHideTimestamp');
  112. // let curTime = new Date().getTime();
  113. // let difference = curTime - onHideTime;
  114. // var isShareOk = false;
  115. // //判断是否忽略分享的状态
  116. // if (Global.isIgnoreShareStatus) {
  117. // isShareOk = true;
  118. // } else {
  119. // //在分享界面停留了3秒当作分享成功,如果少于3秒即有10%概率当作成功
  120. // if (difference > 3000) {
  121. // isShareOk = true;
  122. // } else {
  123. // let randomOk = Math.random() <= 0.1 ? true : false;
  124. // if (randomOk) {
  125. // isShareOk = true;
  126. // }
  127. // }
  128. // }
  129. // GameEvent.fire(GameNotificationKey.ShowShareAction, Global.gameShareType, isShareOk);
  130. // Global.clickShare = false;
  131. // Global.gameShareType = WechatShareType.None;
  132. // Global.isIgnoreShareStatus = false;
  133. // if (isShareOk) {
  134. // SkillApi.report(2, (responseData) => {
  135. // },(error) => {
  136. // });
  137. // } else {
  138. // AlertManager.showShareFailAlert();
  139. // }
  140. // }
  141. // }
  142. // if (GameModule.audioMng) {
  143. // GameModule.audioMng.playBgm();
  144. // }
  145. // });
  146. // wx.onHide(() => {
  147. // console.log('Global onHide ===================================');
  148. // Global.isOnHide = true;
  149. // if (GameModule.userInfo) {
  150. // GameModule.userInfo.doReport();
  151. // }
  152. // // /// 关闭socket 如果socket是打开的状态 其它的状态就不管 打开之后直接重连 && Global._wxSocket.readyState == 'open'
  153. // // if (Global._wxSocket != undefined && Global._wxSocket != null ) {
  154. // // Global._wxSocket.close();
  155. // // }
  156. // cc.sys.localStorage.setItem("onHideTimestamp", Date.parse(new Date()));
  157. // HomeApi.exitGame();
  158. // if (GameModule.audioMng) {
  159. // GameModule.audioMng.stopAll();
  160. // }
  161. // });
  162. // wx.showShareMenu({
  163. // withShareTicket: true,
  164. // success: function (res) {
  165. // },
  166. // fail: function (res) {
  167. // },
  168. // complete: function (res) {
  169. // }
  170. // });
  171. // wx.onShareAppMessage(function (res) {
  172. // // 用户点击了“转发”按钮
  173. // if (res.from === 'button') {
  174. // // 来自页面内转发按钮
  175. // } else if (res.from === 'menu') {
  176. // }
  177. // if (Global.isCheck) {
  178. // var uid = -1;
  179. // if (Global.user != undefined && Global.user.uid != undefined) {
  180. // uid = Global.user.uid;
  181. // }
  182. // return {
  183. // title: '猜猜他是谁?',
  184. // imageUrl: 'https://pub.dwstatic.com/wxgame/taptapstar/share/share_3.png',
  185. // query: 'uid=' + uid + '&shareType=' + ShareAction.INVITE_FRIEND,
  186. // success: function (res) {
  187. // console.log('分享成功');
  188. // // 分享成功上报
  189. // SkillApi.report(2, (responseData) => {
  190. // console.log('上报分享成功');
  191. // },(error) => {
  192. // });
  193. // },
  194. // fail: function (res) {
  195. // // 转发失败
  196. // console.log('取消或分享失败');
  197. // },
  198. // complete: function () {
  199. // }
  200. // }
  201. // } else {
  202. // let randomIndex = parseInt(Math.random()*(WeChat.shareArray.length),10);
  203. // let shareObjct = WeChat.shareArray[randomIndex];
  204. // var uid = -1;
  205. // if (Global.user != undefined && Global.user.uid != undefined) {
  206. // uid = Global.user.uid;
  207. // }
  208. // return {
  209. // title: shareObjct.title,
  210. // imageUrl: 'https://pub.dwstatic.com/wxgame/taptapstar/share/' + shareObjct.icon,
  211. // query: 'uid=' + uid + '&shareType=' + ShareAction.INVITE_FRIEND,
  212. // success: function (res) {
  213. // console.log('分享成功');
  214. // // 分享成功上报
  215. // SkillApi.report(2, (responseData) => {
  216. // console.log('上报分享成功');
  217. // },(error) => {
  218. // });
  219. // },
  220. // fail: function (res) {
  221. // // 转发失败
  222. // console.log('取消或分享失败');
  223. // },
  224. // complete: function () {
  225. // },
  226. // };
  227. // }
  228. // });
  229. // }
  230. Platform.initPlatform();