var jcfw = require('./jcfw'); var jcgamelog = jcfw.gamelog; var jcshare = jcfw.share; var ShareConfig = { 'money': { urls: ['gift.jpg'], titles: ['领元宝'], logid: 1 }, 'normal': { urls: ['gift.jpg'], titles: ['领元宝'], logid: 2 } }; var SDKManage = function() { this.isoffical = false; this.gameId = 8003; this.hasLogin = false; this.vision = '1.0.0'; this.ChannelId = 6001; this.init = function() { jcfw.init(this.ChannelId, this.gameId, this.isoffical); }; this.doLogin = function(res) { if (this.loginStep < this.logincbarr.length) { this.logincbarr[this.loginStep](res); this.loginStep++; } else { this.loginOver(); } }; this.checkSharedata = function() { var ldata = wx.getLaunchOptionsSync().query; console.log('checkSharedata'); console.log(ldata); if (ldata.inviter_id) { jcshare.acceptAchievementInvite(ldata.inviter_id, '100', JSON.stringify([['100', 100]])); } setTimeout(() => { this.doLogin(); }, 10); }; this.gamelogin = function() { var token = wx.getStorageSync('token'); var self = this; if (!token || token == '') { token = jcfw.makeUUID(); try { wx.setStorageSync('token', token); } catch (e) { } } jcfw.loginUser((res) => { self.hasLogin = true; console.log('login success'); console.log(res); wx.setStorageSync('account', res); self.account_id = res.account_id; self.doLogin(); }, (neterr, logicerr, errmsg) => { self.gamelogin(); } ); }; this.getGameConfig = function() { var self = this; var cb = function(res) { console.log('getGameConfig'); console.log(res); wx.setStorageSync('cfg', res); setTimeout(() => { self.doLogin(); }, 10); }; var cbf = function(res) { console.log('getGameConfig fail'); self.getGameConfig(); }; jcfw.cloud.initConfig(cb, cbf); // jcfw.getConfig('',cb,cbf); }; this.setStorage = function(v, successcb, failcb) { if (this.hasLogin) { jcfw.cloud.setStorages(v, successcb, failcb); } }; this.getStorage = function(keys, successcb, failcb) { if (this.hasLogin) { jcfw.cloud.getStorages(keys, successcb, failcb); } }; this.getShareConfig = function() { var self = this; var cbs = function(res) { self.doLogin(); for (var i = 0; i < res.length; i++) { var sdt = res[i]; if (ShareConfig[sdt.type]) { ShareConfig[sdt.type].urls = sdt.images; ShareConfig[sdt.type].titles = sdt.strs; } } // if(cc.sys.platform == cc.sys.WECHAT_GAME){ // wx.showShareMenu({ // withShareTicket: false // }); // wx.onShareAppMessage(function () { // return { // title: Main.config.shareConfig["normal"].title, // imageUrl: Main.config.shareConfig["normal"].url2[0] // } // }); // } console.log('getShareConfig ssssssssssssss'); console.log(res); }; var cbf = function() { console.log('getShareConfig fffffffffff'); self.getShareConfig(); }; jcfw.cloud.getShareData(this.sex, this.province, this.city, cbs, cbf); }; this.loadData = function() { var self = this; var cb = function(v) { // self.playerData.load(v); self.doLogin(); }; this.getStorage(['aaa', 'bbb'], cb); }; this.getAchievInviteeNum = function(cb) { var callback = function(res) { console.log('playerData.invitee_nums'); console.log(res); var invitee_nums = 0; for (var i = 0; i < res.length; i++) { if (res[i].achievement_id == 100) { invitee_nums = res[i].invitee_num;//邀请玩家数 break; } } if (cb) { cb(invitee_nums); } }; jcshare.getAchievInviteeNum(callback); }; this.Login = function(cb) { this.loginStep = 0; if (cb) { this.loginOver = cb; } this.logincbarr = [ this.gamelogin.bind(this), // this.wxGetUseInfo.bind(this), this.checkSharedata.bind(this), // redis 配置 this.getGameConfig.bind(this) // 获取分享配置 // this.getShareConfig.bind(this), // 获取云存档 // this.loadData.bind(this), ]; this.doLogin(); }; }; var instance = new SDKManage(); module.exports = instance;