const BasePage = require( "act.page.base" ); const FxSVC = require( "nx.fx.sv.expand" ); const NxSpine = require( "nx.fx.spine" ); const FID = require( "bridge.function.ids" ); cc.Class({ extends: BasePage, properties: { nodReward:{ default: null, type : FxSVC }, spRole: { default: null, type: NxSpine }, }, // 初始化 build: function( _data ) { this._super( _data ); this.unscheduleAllCallbacks(); let cfgs = gdata( this.data.config, "data_award" ); let now = new Date(); let tomon = now.getMonth(); let rlist = []; let rewards = cfgs[tomon + 1]; if( rewards ){ for (let mon in rewards ) { let reward = rewards[mon]; rlist.push( reward.rewards[0] ); } } this.nodReward.rebuild( rlist ); this.spRole.load( "resDB/models/H30069/show", ( _e ) => { if( !_e ) { this.spRole.action( "action1", true ); } else { this.spRole.stop(); } } ); // 视图监听 nx.bridge.acts.vbind( this, [ [ "sign30", this.freshDayReward.bind( this ) ], ] ); // this.mod.reqBaseData(); nx.debug( "$ActPage onEnable"); // 获取指定主题信息 }, // 开启 onEnable: function() { this.mod.reqBaseData(); if( nx.bridge.plot && nx.bridge.plot.isDoing() ){ this.scheduleOnce( ()=>{ this.dealPlot(); }, 0.005 ); // this.nodFocus.getComponent( "cmp.plot.trigger" ).pID = "sign"; // this.nodFocus.getComponent( "cmp.plot.trigger" ).regist(); } // console.log( "當前的首次充值信息" + JSON.stringify( this.mod.reqChargeData() ) ); }, // 销毁 onDestroy: function() { // 活动监听解除 if( nx.bridge.acts ) { nx.bridge.acts.vunbind( this ); } this._super(); }, freshDayReward: function( _data ){ if( nx.dt.objEmpty( _data ) ){ return; } this.chargeinfo = this.mod.reqChargeData(); this.freshState( _data ); }, freshState: function( _data ){ if( !_data ){ return; } let day = _data.day; let status = _data.status; let children = this.nodReward.bindSCV.content.children; for( let i = 0; i < children.length; ++i ) { let temp = children[ i ]; if( temp.svItem ) { temp.svItem.setAgainFun( ()=>{ if( this.chargeinfo && this.chargeinfo.status == 0 ){ // 否则提示退出游戏 nx.mbox( "lab_sign_panel_tip1", [ "Cancle", "Sure" ], ( _key, _box ) => { _box.close(); if( _key == "Sure" ) { nx.bridge.jumper.jump2Window( FID.Charge ); } } ) // nx.tbox( "充值" ); }else{ this.mod.reqSign(); } // 提示 彈充值相關 }); if( i == day && status == 0 ){ temp.svItem.onFocus(); temp.svItem.setStaus( 0 ); temp.svItem.setFun( ()=>{ this.mod.reqSign(); } ) }else if( i == ( day - 1 ) && status == 1 ){ temp.svItem.outFocus(); temp.svItem.setStaus( 1, this.chargeinfo && this.chargeinfo.status == 1 ); }else { if( ( i < day && status == 2 ) || i < day ) { temp.svItem.outFocus(); let state = 2; temp.svItem.setStaus( state ); } } } } }, dealPlot: function(){ let children = this.nodReward.bindSCV.content.children; let nod = children[0]; let cell = nx.gui.find( this, "plot" ); let pos = nod.convertToWorldSpaceAR( cc.Vec2.ZERO ); cell.position = cell.parent.convertToNodeSpaceAR( pos ); cell.width = nod.width; cell.height = nod.height; }, onTouchSign: function(){ this.mod.reqSign(); } });