118 lines
3.0 KiB
JavaScript
118 lines
3.0 KiB
JavaScript
/*******************************************************************************
|
|
*
|
|
* 活动: 成長基金
|
|
*
|
|
*
|
|
******************************************************************************/
|
|
|
|
const ActBase = require( "act.base" );
|
|
|
|
const ActFund = cc.Class( {
|
|
|
|
extends: ActBase,
|
|
|
|
// 初始化配置数据
|
|
initConfig: function() {
|
|
|
|
// 视图附着
|
|
nx.plugin.add( this, [ "view" ] );
|
|
this.vattach( "Acts" );
|
|
},
|
|
|
|
// 注册协议接受事件
|
|
registerProtocals: function() {
|
|
|
|
this.RegisterProtocal( 16603, this.handle16603.bind( this ) ); // 請求子活動相關,來取相關的顯示數據
|
|
this.RegisterProtocal( 16604, this.handle16604.bind( this ) ); // 請求領取子活動獎勵相關,來取相關的顯示數據
|
|
},
|
|
|
|
// 从服务器初始化数据
|
|
reqBaseFromServer: function( _cb ) {
|
|
|
|
// let cfgs = [
|
|
// this.data.config,//付費活動
|
|
// ]
|
|
// this.loadConfigs( cfgs, ( _ret, _data ) =>{
|
|
this.reqBaseData( _cb );
|
|
// } )
|
|
|
|
},
|
|
|
|
// 请求活动信息
|
|
reqBaseData: function( _cb ) {
|
|
this.reqFundData( _cb );
|
|
},
|
|
|
|
// ============================================================
|
|
// 基金
|
|
// ============================================================
|
|
|
|
// 请求基金信息
|
|
reqFundData: function( _cb ) {
|
|
|
|
this.SendProtocal( 16603, {
|
|
bid : this.data.camp_id,
|
|
}, _cb );
|
|
},
|
|
|
|
// 请求領取基金獎勵
|
|
reqGetFundAward: function( _aim ,_cb) {
|
|
|
|
this.SendProtocal( 16604, {
|
|
bid : this.data.camp_id,
|
|
aim : _aim,
|
|
arg : 0
|
|
}, _cb);
|
|
},
|
|
|
|
// 请求相關配置信息
|
|
handle16603: function( _data ) {
|
|
if( _data.bid == this.data.camp_id ){
|
|
this.vset( "fundBaseData", _data );
|
|
this.freshTips();
|
|
return;
|
|
}
|
|
},
|
|
|
|
// 请求相關配置信息
|
|
handle16604: function( _data ) {
|
|
|
|
},
|
|
|
|
// ============================================================
|
|
// 活动红点提示
|
|
// ============================================================
|
|
|
|
// 活动用到的提示KEY
|
|
tipKeys: function() {
|
|
return [ "fundClaim" ];
|
|
},
|
|
|
|
// 红点提示更新
|
|
freshTips: function() {
|
|
|
|
let data = this.vget( "fundBaseData" );
|
|
let is_reward = false;
|
|
let aim_list = data.aim_list;
|
|
for(let i in aim_list){
|
|
if(data.finish == 0){//未购买
|
|
if(aim_list[i].status == 1){
|
|
is_reward = true;
|
|
break;
|
|
}
|
|
}else{
|
|
if(aim_list[i].status == 1 || aim_list[i].status == 4){
|
|
is_reward = true;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
this.openTip( "fundClaim", is_reward );
|
|
return is_reward;
|
|
},
|
|
|
|
} );
|
|
|
|
// 模块导出
|
|
module.exports = ActFund; |