main.js 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272
  1. window.__zero__ = {
  2. "packageID": "1225",
  3. }
  4. window.boot = function () {
  5. var settings = window._CCSettings;
  6. window._CCSettings = undefined;
  7. var onStart = function () {
  8. cc.view.enableRetina(true);
  9. cc.view.resizeWithBrowserSize(true);
  10. var launchScene = settings.launchScene;
  11. // load scene
  12. cc.director.loadScene(launchScene, null,
  13. function () {
  14. console.log('Success to load scene: ' + launchScene);
  15. }
  16. );
  17. };
  18. var option = {
  19. id: 'GameCanvas',
  20. debugMode: settings.debug ? cc.debug.DebugMode.INFO : cc.debug.DebugMode.ERROR,
  21. showFPS: settings.debug,
  22. frameRate: 60,
  23. groupList: settings.groupList,
  24. collisionMatrix: settings.collisionMatrix,
  25. }
  26. cc.assetManager.init({
  27. bundleVers: settings.bundleVers,
  28. subpackages: settings.subpackages,
  29. remoteBundles: settings.remoteBundles,
  30. server: settings.server,
  31. subContextRoot: settings.subContextRoot
  32. }, function () {
  33. let { RESOURCES, INTERNAL, MAIN, START_SCENE } = cc.AssetManager.BuiltinBundleName;
  34. let bundleRoot = [INTERNAL];
  35. settings.hasResourcesBundle && bundleRoot.push(RESOURCES);
  36. settings.hasStartSceneBundle && bundleRoot.push(MAIN);
  37. var count = 0;
  38. function cb(err) {
  39. if (err) return console.error(err.message, err.stack);
  40. count++;
  41. if (count === bundleRoot.length + 1) {
  42. // if there is start-scene bundle. should load start-scene bundle in the last stage
  43. // Otherwise the main bundle should be the last
  44. cc.assetManager.loadBundle(settings.hasStartSceneBundle ? START_SCENE : MAIN, function (err) {
  45. if (!err) cc.game.run(option, onStart);
  46. });
  47. }
  48. }
  49. // load plugins
  50. cc.assetManager.loadScript(settings.jsList.map(function (x) { return 'src/' + x; }), cb);
  51. // load bundles
  52. for (let i = 0; i < bundleRoot.length; i++) {
  53. cc.assetManager.loadBundle(bundleRoot[i], cb);
  54. }
  55. });
  56. ///////////////////////////////////////////////////////////////////////
  57. let cfg = {
  58. a_gameid:"666666100216",
  59. a_gamekey:"9f9dcda16864e268",
  60. a_pub:"vivominih5sdk_cnlccxx_001",
  61. a_appid:"105873581",
  62. c_cpid:"afd867d8fab15b12b65f"
  63. }
  64. const asdkUrl = "https://h5sdk.szzyqw.com"
  65. let a_params = ''
  66. let interval = ''
  67. let iscreate = 0
  68. let cdate = ''
  69. let isone = 0
  70. let isend = 0
  71. //bool
  72. if (!cfg.a_gameid || !cfg.a_gamekey || !cfg.a_pub || !cfg.a_appid || !cfg.c_cpid) {
  73. console.error("缺少参数")
  74. }
  75. //http
  76. function asdkRequest(url, data) {
  77. return new Promise((resolve, reject) => {
  78. qg.request({
  79. url: asdkUrl + url,
  80. method: "POST",
  81. header: {
  82. 'content-type': "application/x-www-form-urlencoded"
  83. },
  84. data,
  85. success: function (a_res) {
  86. resolve(a_res.data)
  87. },
  88. fail: function (a_res) {
  89. resolve(a_res.data)
  90. }
  91. })
  92. })
  93. }
  94. // 初始化
  95. function asdkInit(callback) {
  96. let url = '/mini/datatrans.php?action=mini_init'
  97. let data = {
  98. "a_gameid": cfg.a_gameid,
  99. "a_gamekey": cfg.a_gamekey,
  100. "a_pub": cfg.a_pub,
  101. "a_appid": cfg.a_appid,
  102. "c_cpid": cfg.c_cpid,
  103. }
  104. asdkRequest(url, data).then(a_res => {
  105. console.log('初始化返回:'+JSON.stringify(a_res))
  106. callback(a_res)
  107. })
  108. }
  109. // 登录
  110. function asdkLogin(callback) {
  111. login().then(res => {//每次都重新登录
  112. callback(res)
  113. })
  114. }
  115. function login(){
  116. return new Promise((resolve, reject) => {
  117. if (qg.getSystemInfoSync().platformVersionCode >= 1063) {
  118. qg.login().then((res) => {
  119. if (res.data.token) {
  120. console.log('渠道返回当前用户信息: ' + JSON.stringify(res.data));
  121. let url = '/othersdkdatatrans.php?sdkabbr=vivominih5sdk&a_pub='+cfg.a_pub+'&a_gameid='+cfg.a_gameid+'&a_gamekey='+cfg.a_gamekey
  122. let data = {
  123. "a_gameid": cfg.a_gameid,
  124. "a_gamekey": cfg.a_gamekey,
  125. "a_pub": cfg.a_pub,
  126. "a_appid": cfg.a_appid,
  127. "c_cpid": cfg.c_cpid,
  128. "token": res.data.token
  129. }
  130. asdkRequest(url, data).then(a_res => {
  131. if (a_res.code == 0) {
  132. a_params = {
  133. "a_accountid": a_res.data.account.accountid,
  134. "a_sessionid": a_res.data.account.sessionid,
  135. "a_openid": a_res.data.account.extdata1,
  136. }
  137. console.log("login data:"+JSON.stringify(a_params))
  138. }
  139. resolve(a_res)
  140. })
  141. }
  142. }, (err) => {
  143. console.log('获取用户信息失败' + JSON.stringify(err));
  144. let data = {'code':-1,'msg':'获取用户信息失败' + JSON.stringify(err)}
  145. resolve(data)
  146. })
  147. }else{
  148. console.log('版本不符合,请更新');
  149. let data = {'code':-1,'msg':'版本不符合,请更新'}
  150. resolve(data)
  151. }
  152. })
  153. }
  154. // 上报角色信息
  155. function asdkSendRole(roleInfo, callback) {
  156. let url = '/datatrans.php?action=mini_uploadinfo'
  157. let data = {
  158. "a_gameid": cfg.a_gameid,
  159. "a_gamekey": cfg.a_gamekey,
  160. "a_pub": cfg.a_pub,
  161. "a_sessionid": a_params.a_sessionid,
  162. "a_accountid": a_params.a_accountid,
  163. "playerid": roleInfo.playerid,
  164. "playername": roleInfo.playername,
  165. "playerlevel": roleInfo.playerlevel,
  166. "serverid": roleInfo.serverid,
  167. "servername": roleInfo.servername
  168. }
  169. asdkRequest(url, data).then(res => {
  170. callback(res)
  171. })
  172. }
  173. // 支付
  174. function asdkPay(payOrder, payCallback) {
  175. //查询支付列表
  176. let url = '/datatrans.php?action=generatepayorder'
  177. let data = {
  178. "callbackurl": payOrder.callbackurl,
  179. "paymoney": payOrder.paymoney*100,
  180. "custominfo": payOrder.custominfo,
  181. "customorderid": payOrder.customorderid,
  182. "productdesc": payOrder.productdesc,
  183. "productfeecode": payOrder.productfeecode,
  184. "appid":cfg.a_appid,
  185. "openid":a_params.a_openid
  186. }
  187. payOrder.a_gameid = cfg.a_gameid;
  188. payOrder.a_gamekey = cfg.a_gamekey;
  189. payOrder.a_pub = cfg.a_pub;
  190. payOrder.a_sessionid = a_params.a_sessionid;
  191. payOrder.a_accountid = a_params.a_accountid;
  192. payOrder.extdata = JSON.stringify(data);
  193. asdkRequest(url, payOrder).then(a_res => {
  194. if (a_res.code == 0) {
  195. console.log("pay info:"+JSON.stringify(a_res))
  196. let params = {
  197. "appId":cfg.a_appid,
  198. "cpOrderNumber":a_res.data.orderid,
  199. "productName":payOrder.productdesc,
  200. "productDesc":payOrder.productdesc,
  201. "orderAmount":payOrder.paymoney*100,
  202. "notifyUrl":a_res.data.extdata1,
  203. "extInfo":a_res.data.orderid,
  204. "vivoSignature":a_res.data.extdata2,
  205. }
  206. qg.pay({
  207. orderInfo: JSON.stringify(params),
  208. success: function(ret) {
  209. console.log("支付成功")
  210. payCallback(ret)
  211. },
  212. fail: function (err) {
  213. console.log("支付失败")
  214. payCallback(ret)
  215. },
  216. cancel: function (ret) {
  217. console.log("支付取消")
  218. payCallback(ret)
  219. },
  220. complete: function(){
  221. console.log("支付完成")
  222. payCallback(ret)
  223. }
  224. })
  225. }else{
  226. console.log("支付失败")
  227. payCallback({'code':-1,'msg':a_res.msg})
  228. }
  229. })
  230. }
  231. qg.asdk = {
  232. asdkInit,
  233. asdkLogin,
  234. asdkSendRole,
  235. asdkPay,
  236. asdkRequest,
  237. }
  238. ///////////////////////////////////////////////////////////////////////
  239. };
  240. require('adapter/rename-adapter.js');
  241. require('adapter/qgame-adapter.js');
  242. require('src/settings.js');
  243. require('src/cocos2d-runtime.js');
  244. if (CC_PHYSICS_BUILTIN || CC_PHYSICS_CANNON) {
  245. require('src/physics.js');
  246. }
  247. require('adapter/index.js');
  248. cc.macro.CLEANUP_IMAGE_CACHE = true;
  249. window.boot();