787 lines
25 KiB
JavaScript
787 lines
25 KiB
JavaScript
// Learn cc.Class:
|
||
// - [Chinese] http://docs.cocos.com/creator/manual/zh/scripting/class.html
|
||
// - [English] http://www.cocos2d-x.org/docs/creator/en/scripting/class.html
|
||
// Learn Attribute:
|
||
// - [Chinese] http://docs.cocos.com/creator/manual/zh/scripting/reference/attributes.html
|
||
// - [English] http://www.cocos2d-x.org/docs/creator/en/scripting/reference/attributes.html
|
||
// Learn life-cycle callbacks:
|
||
// - [Chinese] http://docs.cocos.com/creator/manual/zh/scripting/life-cycle-callbacks.html
|
||
// - [English] http://www.cocos2d-x.org/docs/creator/en/scripting/life-cycle-callbacks.html
|
||
var PLAT_WX = {
|
||
SHARE_FAIL: 25,
|
||
SHARE_TIME: 3000,
|
||
shareCount: {},
|
||
|
||
getLaunchInfo(){
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
return wx.getLaunchOptionsSync();
|
||
}
|
||
return null;
|
||
},
|
||
|
||
getSystemInfo(){
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
return wx.getSystemInfoSync();
|
||
}
|
||
return null;
|
||
},
|
||
|
||
/** example:
|
||
*
|
||
* @param {object} btninfo :
|
||
* {
|
||
* width: 100,
|
||
* height: 100,
|
||
* name: logo.png
|
||
* }
|
||
* @param {function} cb
|
||
*/
|
||
getUserInfo(btninfo, cb){
|
||
console.log('cc.sys.platform:' + cc.sys.platform);
|
||
if(cc.sys.platform != cc.sys.WECHAT_GAME){
|
||
cb && cb(null, -1000);
|
||
return;
|
||
}
|
||
this._usercb = cb;
|
||
|
||
let _flag = 0;
|
||
|
||
if(btninfo && btninfo.flag){
|
||
_flag = btninfo.flag;
|
||
}
|
||
|
||
let self = this;
|
||
let getInfo = function()
|
||
{
|
||
console.log('[wx.getUserInfo]');
|
||
wx.getUserInfo({
|
||
withCredentials: true,
|
||
lang: 'zh_CN',
|
||
success: function(res) {
|
||
res.flag = _flag;
|
||
self._usercb && self._usercb(res, 1);
|
||
},
|
||
fail:function(res){
|
||
res.flag = _flag;
|
||
console.log(res);
|
||
self._usercb && self._usercb(res, -1, null, _flag);
|
||
}
|
||
})
|
||
}
|
||
if(wx.createUserInfoButton){
|
||
wx.getSetting({
|
||
success: (res) => {
|
||
if (!res.authSetting["scope.userInfo"]) {
|
||
var sysInfo = wx.getSystemInfoSync();
|
||
var sz = {
|
||
width: cc.winSize.width,
|
||
height: cc.winSize.height
|
||
};
|
||
// var sz = cc.winSize;
|
||
let drw = self._dr? self._dr.width: 480;
|
||
let drh = self._dr? self._dr.height: 960;
|
||
sz.width = sysInfo.screenWidth;//sysInfo.screenHeight / 2;
|
||
sz.height = sysInfo.screenHeight;
|
||
var realw = btninfo.width / drw * sz.width;
|
||
var realh = btninfo.height / drh * sz.height;
|
||
//var realx = sz.width / 2 + btnPos.x / 480 * sz.width - realw / 2;
|
||
//var realy = sz.height / 2 - btnPos.y / 960 * sz.height - realh / 2;
|
||
var realx = btninfo.x / drw * sz.width - realw / 2;
|
||
var realy = sz.height - btninfo.y / drh * sz.height - realh / 2;
|
||
|
||
var windowW = sysInfo.windowWidth;
|
||
var windowH = sysInfo.windowHeight;
|
||
var btnwidth = btninfo.width;//102*1.4;
|
||
var btnheight = btninfo.height;//36*1.4;
|
||
|
||
console.log('[wx.createUserInfoButton]');
|
||
console.log(sysInfo);
|
||
console.log(btninfo);
|
||
|
||
let stype = btninfo.name? 'image': 'text';
|
||
|
||
if(!this.btnAuthorize){
|
||
this.btnAuthorize = wx.createUserInfoButton({
|
||
type: stype,
|
||
text: '',
|
||
image: btninfo.name,
|
||
style: {
|
||
left: realx,
|
||
top: realy,
|
||
width: realw,
|
||
height: realh,
|
||
},
|
||
withCredentials: true,
|
||
lang: "zh_CN"
|
||
});
|
||
|
||
this.btnAuthorize.onTap((uinfo) => {
|
||
if (uinfo.userInfo) {
|
||
uinfo.flag = _flag;
|
||
this._usercb && this._usercb(uinfo, 1);
|
||
this.destoryAuth();
|
||
}else {
|
||
// wx.showToast({title:"授权失败"});
|
||
this._usercb && this._usercb(null, -10, null, _flag);
|
||
}
|
||
});
|
||
}
|
||
this._usercb && this._usercb(null, 0, this.btnAuthorize, _flag);
|
||
}
|
||
else{
|
||
console.log("authSetting success");
|
||
getInfo();
|
||
}
|
||
},
|
||
fail: () => {
|
||
console.error("getSetting fail");
|
||
this._usercb && this._usercb(null, -100, null, _flag);
|
||
}
|
||
});
|
||
}else{
|
||
console.log('wx.createUserInfoButton is null');
|
||
getInfo();
|
||
}
|
||
},
|
||
|
||
destoryAuth(){
|
||
if(this.btnAuthorize){
|
||
this.btnAuthorize.destroy && this.btnAuthorize.destroy();
|
||
this.btnAuthorize = null;
|
||
}
|
||
},
|
||
|
||
setUserInfo(dstinfo, ptinfo){
|
||
dstinfo.nickname = ptinfo.nickName;
|
||
dstinfo.country= ptinfo.country;
|
||
dstinfo.province= ptinfo.province;
|
||
dstinfo.city= ptinfo.city;
|
||
dstinfo.avatar_url= ptinfo.avatarUrl;
|
||
dstinfo.sex= ptinfo.gender;
|
||
},
|
||
|
||
setTokenInfo(dstinfo, tokeninfo){
|
||
if(tokeninfo && tokeninfo.rawData){
|
||
dstinfo.rawData = tokeninfo.rawData;
|
||
dstinfo.signature = tokeninfo.signature;
|
||
dstinfo.encryptedData = tokeninfo.encryptedData;
|
||
dstinfo.iv = tokeninfo.iv;
|
||
}
|
||
},
|
||
|
||
init(owner, channelid){
|
||
this._owner = owner;
|
||
this._ptid = channelid;
|
||
// this.loadInfo();
|
||
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
wx.showShareMenu({
|
||
withShareTicket: true
|
||
});
|
||
wx.updateShareMenu({
|
||
withShareTicket: true
|
||
});
|
||
let self = this;
|
||
let _onShow = function(res){
|
||
console.log('[wx.onShow]', res.query);
|
||
self._owner.gameShow(res);
|
||
self._man && self._man.onPlatShow && self._man.onPlatShow(res);
|
||
if(self._jumpnow){
|
||
self._jumpnow = false;
|
||
self._jumpobj.result = 2;
|
||
self._jumpobj.finishTime = new Date().getTime();
|
||
self._owner.event.emit(self._owner.event.Events.GOTO_APP_RESULT, self._jumpobj);
|
||
self._jumpobj = null;
|
||
}
|
||
};
|
||
try{
|
||
wx.offShow(_onShow);
|
||
}catch(err){
|
||
|
||
}
|
||
wx.onShow(_onShow);
|
||
let _onHide = function(){
|
||
console.log('[wx.onHide]');
|
||
self._owner.gameHide();
|
||
self._man && self._man.onPlatHide && self._man.onPlatHide();
|
||
};
|
||
try{
|
||
wx.offHide(_onHide);
|
||
}catch(err){
|
||
|
||
}
|
||
wx.onHide(_onHide);
|
||
|
||
wx.onAudioInterruptionBegin((res)=>{
|
||
console.log('wx.onAudioInterruptionBegin');
|
||
self._owner.event.emit(self._owner.event.Events.AUDIO_INTERRUPT_BEGIN, res);
|
||
});
|
||
|
||
wx.onAudioInterruptionEnd((res)=>{
|
||
console.log('wx.onAudioInterruptionEnd');
|
||
self._owner.event.emit(self._owner.event.Events.AUDIO_INTERRUPT_END, res);
|
||
});
|
||
}
|
||
},
|
||
|
||
bindController(ctrl){
|
||
this._man = ctrl;
|
||
let nd = cc.find('Canvas');
|
||
if(nd){
|
||
let cv = nd.getComponent(cc.Canvas);
|
||
if(cv){
|
||
this._dr = cv.designResolution;
|
||
}
|
||
}
|
||
},
|
||
|
||
commonShare(aimg, atitle, stype, param, successcb, failcb, exinfo){
|
||
var st = (new Date()).getTime();
|
||
let sp = this._owner.makeShareParam(stype, param, exinfo);
|
||
let uuid = this._owner.currUUID();
|
||
let img = aimg;
|
||
if(!img && this._exshareinfo){
|
||
img = this._exshareinfo.imgurl;
|
||
}
|
||
let title = atitle;
|
||
if(!title && this._exshareinfo){
|
||
title = this._exshareinfo.title;
|
||
}
|
||
this.PTShare(title, img, sp);
|
||
this._checkShareRes(st, stype, sp, uuid, successcb, failcb);
|
||
},
|
||
|
||
captureShare(rc, title, stype, param, successcb, failcb, exinfo){
|
||
var st = (new Date()).getTime();
|
||
let sp = this._owner.makeShareParam(stype, param, exinfo);
|
||
let uuid = this._owner.currUUID();
|
||
var sz = cc.winSize;
|
||
let drw = this._dr? this._dr.width: 480;
|
||
let drh = this._dr? this._dr.height: 960;
|
||
var dtx = (sz.width - drw) / 2;
|
||
var dty = (sz.height - drh) / 2;
|
||
let realc = rc;
|
||
realc.x = (rc.x + dtx) / sz.width * canvas.width;
|
||
realc.width = rc.width / sz.width * canvas.width;
|
||
realc.y = (rc.y + dty) / sz.height * canvas.height;
|
||
realc.height = rc.height / sz.height * canvas.height;
|
||
if(realc.x < 0){
|
||
realc.x = 0;
|
||
}
|
||
if(realc.y < 0){
|
||
realc.y = 0;
|
||
}
|
||
|
||
this.PTShareCapture(title, realc, sp);
|
||
this._checkShareRes(st, stype, sp, uuid, successcb, failcb);
|
||
},
|
||
|
||
_checkShareRes(starttime, sharetype, param, tokenid, successcb, failcb){
|
||
if(!this._man){
|
||
try{
|
||
failcb && failcb(-100, param, tokenid);
|
||
}catch(err){
|
||
|
||
}
|
||
return;
|
||
}
|
||
this._man.scheduleOnce(() => {
|
||
let dt = (new Date()).getTime() - starttime;
|
||
console.log(dt);
|
||
|
||
if(this.shareCount[sharetype]==undefined){
|
||
this.shareCount[sharetype] = false;
|
||
}
|
||
if(this.shareCount[sharetype] == false && Math.random()*100>this.SHARE_FAIL){
|
||
this.shareCount[sharetype] = true;
|
||
try{
|
||
failcb && failcb(-1, param, tokenid, dt);
|
||
}catch(err){
|
||
|
||
}
|
||
return;
|
||
}
|
||
|
||
if(dt>this.SHARE_TIME){
|
||
try{
|
||
successcb && successcb(param, tokenid, dt);
|
||
}catch(err){
|
||
|
||
}
|
||
}
|
||
else{
|
||
try{
|
||
failcb && failcb(-2, param, tokenid, dt);
|
||
}catch(err){
|
||
|
||
}
|
||
}
|
||
}, 0.5);
|
||
},
|
||
|
||
PTInitShare(normalinfo){
|
||
if(!normalinfo){
|
||
return;
|
||
}
|
||
if(!this._exshareinfo){
|
||
this._exshareinfo = normalinfo;
|
||
}else{
|
||
if(normalinfo.title && this._exshareinfo.title != normalinfo.title){
|
||
this._exshareinfo.title = normalinfo.title;
|
||
}
|
||
if(normalinfo.imgurl && this._exshareinfo.imgurl != normalinfo.imgurl){
|
||
this._exshareinfo.imgurl = normalinfo.imgurl;
|
||
}
|
||
}
|
||
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
wx.showShareMenu({
|
||
withShareTicket: true,
|
||
success: function (data) {
|
||
console.log(data);
|
||
},
|
||
fail: function (data) {
|
||
console.log(data);
|
||
}
|
||
});
|
||
|
||
wx.updateShareMenu({
|
||
withShareTicket: true,
|
||
success: function (data) {
|
||
console.log(data);
|
||
},
|
||
fail: function (data) {
|
||
console.log(data);
|
||
}
|
||
});
|
||
if(wx.aldOnShareAppMessage){
|
||
wx.aldOnShareAppMessage(() => {
|
||
return {
|
||
title : this._exshareinfo.title,
|
||
imageUrl : this._exshareinfo.imgurl,
|
||
query : "fromid=" + this._owner.accountID + "&fromname=" + this._owner.nickName,
|
||
}
|
||
});
|
||
}else{
|
||
wx.onShareAppMessage(() => {
|
||
return {
|
||
title : this._exshareinfo.title,
|
||
imageUrl : this._exshareinfo.imgurl,
|
||
query : "fromid=" + this._owner.accountID + "&fromname=" + this._owner.nickName,
|
||
}
|
||
});
|
||
}
|
||
|
||
}
|
||
},
|
||
|
||
PTShare(content, imgurl, param, successcb, failcb){
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
if(wx.aldShareAppMessage){
|
||
wx.aldShareAppMessage({
|
||
title: content,
|
||
imageUrl: imgurl,
|
||
query: param
|
||
});
|
||
}else{
|
||
wx.shareAppMessage({
|
||
title: content,
|
||
imageUrl: imgurl,
|
||
query: param
|
||
});
|
||
}
|
||
successcb && successcb();
|
||
}else{
|
||
failcb && failcb(-1000);
|
||
}
|
||
},
|
||
|
||
PTShareCapture(content, rc, param, successcb, failcb){
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
let surl = canvas.toTempFilePathSync({
|
||
x: rc.x,
|
||
y: rc.y,
|
||
width: rc.width,
|
||
height: rc.height,
|
||
destWidth: 500,
|
||
destHeight: 400,
|
||
});
|
||
if(wx.aldShareAppMessage){
|
||
wx.aldShareAppMessage({
|
||
title: content,
|
||
imageUrl: surl,
|
||
query: param
|
||
});
|
||
}else{
|
||
wx.shareAppMessage({
|
||
title: content,
|
||
imageUrl: surl,
|
||
query: param
|
||
});
|
||
}
|
||
successcb && successcb();
|
||
}else{
|
||
failcb && failcb(-1000);
|
||
}
|
||
},
|
||
|
||
PTOpenKF(cb,info){
|
||
if (cc.sys.platform == cc.sys.WECHAT_GAME) {
|
||
if(wx && wx.openCustomerServiceConversation){
|
||
let self = this;
|
||
let obj = {
|
||
// sessionFrom: '烧味蹦蹦蹦',
|
||
showMessageCard: info.showCard,
|
||
sendMessageTitle: info.title,
|
||
sendMessagePath: '',
|
||
sendMessageImg: info.img,
|
||
success:function(res){
|
||
console.log('[wx.openCustomerServiceConversation]success');
|
||
console.log(res);
|
||
cb && cb(true);
|
||
if(self._man && self._man.onKFOpened){
|
||
self._man.onKFOpened();
|
||
}
|
||
},
|
||
fail:function(res){
|
||
console.log('[wx.openCustomerServiceConversation]fail');
|
||
console.log(res);
|
||
cb && cb(false);
|
||
}
|
||
}
|
||
wx.openCustomerServiceConversation(obj);
|
||
}
|
||
}else{
|
||
cb && cb(false);
|
||
}
|
||
},
|
||
|
||
PTCreateGameClubButton(nleft, ntop, nwidth){
|
||
if (cc.sys.platform == cc.sys.WECHAT_GAME && wx.createGameClubButton) {
|
||
let btn = wx.createGameClubButton({
|
||
icon: 'light',
|
||
style: {
|
||
left: nleft,
|
||
top: ntop,
|
||
width: nwidth,
|
||
height: nwidth
|
||
}
|
||
});
|
||
|
||
if(btn){
|
||
btn.onTap((res)=>{
|
||
console.log(res);
|
||
});
|
||
}
|
||
|
||
return btn;
|
||
}
|
||
},
|
||
/**
|
||
* @param {string} str 显示的文字
|
||
* @param {icon} icon 图标类型 默认'none';
|
||
* success: 显示成功图标
|
||
* loading: 显示加载图标
|
||
* none: 不显示图标,此时 title 文本最多可显示两行
|
||
* */
|
||
PTShowToast(str, icon){
|
||
if (cc.sys.platform === cc.sys.WECHAT_GAME) {
|
||
wx.showToast({title: str, icon: icon || 'none'});
|
||
}
|
||
},
|
||
|
||
PTGotoApp(appid, apppath, exobj, cb, qdid, env, acontent){
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
let starttm = new Date().getTime();
|
||
let self = this;
|
||
let envstr = env? env: 'release';
|
||
let obj = {
|
||
appId: appid,
|
||
path: apppath,
|
||
extraData: exobj,
|
||
envVersion: envstr,
|
||
success: function(res){
|
||
let endtm = new Date().getTime();
|
||
self._owner.gamelog.logJumpApp(appid, apppath, 1, qdid);
|
||
cb && cb(1, res, starttm, endtm);
|
||
let resobj = {
|
||
result: 1,
|
||
startTime: starttm,
|
||
endTime: endtm,
|
||
};
|
||
(typeof(acontent) == 'object') && Object.assign(resobj, acontent);
|
||
self._owner.event.emit(self._owner.event.Events.GOTO_APP_RESULT, resobj);
|
||
self._jumpnow = true;
|
||
self._jumpobj = resobj;
|
||
},
|
||
fail: function(res){
|
||
let endtm = new Date().getTime();
|
||
self._owner.gamelog.logJumpApp(appid, apppath, -1, qdid);
|
||
cb && cb(0, res);
|
||
let resobj = {
|
||
result: 0,
|
||
startTime: starttm,
|
||
endTime: endtm,
|
||
};
|
||
(typeof(acontent) == 'object') && Object.assign(resobj, acontent);
|
||
self._owner.event.emit(self._owner.event.Events.GOTO_APP_RESULT, resobj);
|
||
}
|
||
};
|
||
wx.navigateToMiniProgram(obj);
|
||
}else{
|
||
this._owner.gamelog.logJumpApp(appid, apppath, -1000, qdid);
|
||
cb && cb(-1000, null);
|
||
}
|
||
},
|
||
|
||
PTLogin(info, successcb, failcb){
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
var self = this;
|
||
wx.login({
|
||
success: function(res){
|
||
console.log("[wx]login success!" + res.code);
|
||
self._owner.login.login(res.code, successcb, failcb);
|
||
},
|
||
fail: function(res){
|
||
console.log("[wx]login fail!");
|
||
failcb && failcb(0, res? res.errcode: -1, res? res.errmsg:"");
|
||
},
|
||
});
|
||
}else{
|
||
failcb && failcb(0, -1000, "not weixin platform!");
|
||
}
|
||
},
|
||
|
||
// isFromMyApp(){
|
||
// if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
// let launchinfo = wx.getLaunchOptionsSync();
|
||
// if(launchinfo && launchinfo.scene){
|
||
// return launchinfo.scene == 1089;
|
||
// }
|
||
// }
|
||
|
||
// return false;
|
||
// },
|
||
|
||
PTSetClipboardData: function (content, successcb, failcb) {
|
||
if (cc.sys.platform == cc.sys.WECHAT_GAME) {
|
||
wx.setClipboardData({
|
||
data: content,
|
||
successcb,
|
||
failcb
|
||
});
|
||
}else{
|
||
failcb && failcb(-1000);
|
||
}
|
||
},
|
||
|
||
PTGetClipboardData: function (successcb, failcb) {
|
||
if (cc.sys.platform == cc.sys.WECHAT_GAME) {
|
||
wx.getClipboardData({
|
||
success: function(res){
|
||
successcb && successcb(res.data);
|
||
},
|
||
failcb
|
||
});
|
||
}else{
|
||
failcb && failcb(-1000);
|
||
}
|
||
},
|
||
|
||
PTPreviewImage(imgurl, successcb, failcb){
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
wx.previewImage({
|
||
urls: [imgurl],
|
||
successcb,
|
||
failcb
|
||
})
|
||
}else{
|
||
failcb && failcb(-1000);
|
||
}
|
||
},
|
||
|
||
//广告相关
|
||
PTInitADService(){
|
||
|
||
},
|
||
|
||
PTCreateBannerAD(adid, st){
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
if(wx.createBannerAd){
|
||
let data = {
|
||
adUnitId: adid,
|
||
style: st
|
||
};
|
||
return wx.createBannerAd(data);
|
||
}
|
||
}
|
||
return null;
|
||
},
|
||
|
||
PTCreateVideoAD(adid){
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
if(wx.createRewardedVideoAd){
|
||
let data = {
|
||
adUnitId: adid
|
||
};
|
||
return wx.createRewardedVideoAd(data);
|
||
}
|
||
}
|
||
return null;
|
||
},
|
||
|
||
PTCreateInsertAD(adid){
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
if(wx.createInterstitialAd){
|
||
let data = {
|
||
adUnitId: adid
|
||
};
|
||
return wx.createInterstitialAd(data);
|
||
}
|
||
}
|
||
return null;
|
||
},
|
||
|
||
PTSetVideoADCallback(adobj, adowner, cb){
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
let closeCb = function(res){
|
||
console.log("[ad]onClose:"+JSON.stringify(res));
|
||
// 用户点击了【关闭广告】按钮
|
||
// 小于 2.1.0 的基础库版本,res 是一个 undefined
|
||
if (res && res.isEnded || res === undefined) {
|
||
// 正常播放结束,可以下发游戏奖励
|
||
cb && cb(res.isEnded, adowner, res);
|
||
} else {
|
||
// 播放中途退出,不下发游戏奖励
|
||
cb && cb(false, adowner, res);
|
||
}
|
||
// ad.offClose && ad.offClose(closeCb);
|
||
};
|
||
adobj.onClose && adobj.onClose(closeCb);
|
||
}
|
||
},
|
||
|
||
PTVibrateShort(successcb, failcb){
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
wx.vibrateShort({
|
||
success: ()=>{
|
||
successcb && successcb();
|
||
},
|
||
fail: () =>{
|
||
failcb && failcb();
|
||
}
|
||
})
|
||
}
|
||
},
|
||
|
||
PTVibrateLong(successcb, failcb){
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
wx.vibrateLong({
|
||
success: ()=>{
|
||
successcb && successcb();
|
||
},
|
||
fail: () =>{
|
||
failcb && failcb();
|
||
}
|
||
})
|
||
}
|
||
},
|
||
|
||
PTOpenDataContext(){
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
if(wx && wx.getOpenDataContext){
|
||
return wx.getOpenDataContext();
|
||
}else{
|
||
return null;
|
||
}
|
||
}
|
||
return null;
|
||
},
|
||
|
||
PTPostOpenMsg(msg){
|
||
const openDataContext = this.PTOpenDataContext();
|
||
openDataContext && openDataContext.postMessage(msg);
|
||
},
|
||
|
||
// 排行榜相关
|
||
saveRankData(nscore, nmoney, stitle){
|
||
const openDataContext = this.PTOpenDataContext();
|
||
openDataContext && openDataContext.postMessage({
|
||
type: "save_data",
|
||
score: nscore,
|
||
money: nmoney,
|
||
title: stitle
|
||
});
|
||
},
|
||
|
||
showRankData(){
|
||
const openDataContext = this.PTOpenDataContext();
|
||
openDataContext && openDataContext.postMessage({
|
||
type: "friends_all",
|
||
});
|
||
},
|
||
|
||
hideRankData(){
|
||
const openDataContext = this.PTOpenDataContext();
|
||
openDataContext && openDataContext.postMessage({
|
||
type: "friends_all_hide",
|
||
});
|
||
},
|
||
|
||
prevRankPage(){
|
||
const openDataContext = this.PTOpenDataContext();
|
||
openDataContext && openDataContext.postMessage({
|
||
type: 'pagechange',
|
||
prev: 1
|
||
});
|
||
},
|
||
|
||
nextRankPage(){
|
||
const openDataContext = this.PTOpenDataContext();
|
||
openDataContext && openDataContext.postMessage({
|
||
type: 'pagechange',
|
||
next: 1
|
||
});
|
||
},
|
||
|
||
PTADWatch(adid, successcb, failcb){
|
||
if(cc.sys.platform == cc.sys.WECHAT_GAME){
|
||
let videoAd = wx.createRewardedVideoAd({
|
||
adUnitId: adid,
|
||
});
|
||
|
||
videoAd.load()
|
||
.then(function(){
|
||
videoAd.show();
|
||
})
|
||
.catch(function(err){
|
||
console.log(err.errMsg);
|
||
});
|
||
|
||
var errorCb = function(res){
|
||
console.log("[videoad]onerror:"+JSON.stringify(res));
|
||
failcb && failcb(adid, res, true, adid);
|
||
videoAd.offError(this);
|
||
}
|
||
videoAd.onError(errorCb);
|
||
|
||
var getFun = function(res){
|
||
if(res.isEnded){
|
||
try{
|
||
successcb&&successcb(adid, res, adid);
|
||
}catch(e){
|
||
|
||
}
|
||
cb=null;
|
||
}
|
||
videoAd.offClose(this);
|
||
}
|
||
videoAd.onClose(getFun);
|
||
}else{
|
||
failcb && failcb(adid, -1000, true, adid);
|
||
}
|
||
},
|
||
};
|
||
|
||
module.exports = PLAT_WX;
|