122 lines
4.1 KiB
JavaScript
122 lines
4.1 KiB
JavaScript
/******************************************************************
|
|
* Copyright(C) 2019 - 2020 Nx Studio
|
|
*
|
|
* STEP-UP 七日签到
|
|
*
|
|
******************************************************************/
|
|
|
|
const ActPage = require( "act.page.base" );
|
|
const STModel = require( "act.stepup.sign.mod" );
|
|
|
|
cc.Class( {
|
|
|
|
extends: ActPage,
|
|
|
|
properties: {
|
|
nodDate: { default: null, type: cc.Node },
|
|
nodLogo: { default: null, type: cc.Node },
|
|
nodDays: { default: null, type: cc.Node },
|
|
},
|
|
|
|
// 载入
|
|
onLoad: function() {
|
|
|
|
let chds = this.nodDays.children;
|
|
for( let i = 0; i < chds.length; ++i ) {
|
|
let node = chds[i];
|
|
nx.gui.setActive( node, "off", true );
|
|
nx.gui.setActive( node, "on", false );
|
|
nx.gui.setColor( node, "off", cc.Color.WHITE );
|
|
let txt = nx.text.getKey( `SevenDay${i+1}` );
|
|
nx.gui.setString( node, "time", txt );
|
|
nx.gui.setActive( node, "done", false );
|
|
nx.gui.hideAllChildren( node, "status" );
|
|
}
|
|
},
|
|
|
|
// 初始化
|
|
build: function( _data ) {
|
|
|
|
this._super( _data );
|
|
|
|
let data = STModel.getInstance().getConfig();
|
|
for( let idx in data ) {
|
|
let ifo = data[idx];
|
|
let node = this.nodDays.getChildByName( 'day' + idx );
|
|
let icon = nx.gui.getComponent( node, "icon", "cmp.item.base" );
|
|
icon.setData( ifo.reward[0] );
|
|
}
|
|
|
|
STModel.getInstance().reqSignData( ( _ret, _data ) => {
|
|
if( _ret ) {
|
|
this.onFresh();
|
|
}
|
|
} );
|
|
|
|
// 活动时间
|
|
let est = STModel.getInstance().data.end_time;
|
|
nx.gui.setString( this.nodDate, "txt", nx.bridge.time.cdSimple( est ) );
|
|
|
|
},
|
|
|
|
// 刷新
|
|
// 0不可领取 1可领取 2已领取
|
|
onFresh: function() {
|
|
|
|
let data = STModel.getInstance().vget( "stepSign7" );
|
|
for( let idx in data ) {
|
|
let ifo = data[idx];
|
|
let node = this.nodDays.getChildByName( `day${ifo.day}`);
|
|
switch( ifo.status ) {
|
|
case 1: {
|
|
nx.gui.setActive( node, "on", true );
|
|
nx.gui.setActive( node, "off", false );
|
|
nx.gui.setActive( node, "done", false );
|
|
nx.gui.setActive( node, "status/wait", false );
|
|
nx.gui.setActive( node, "status/got", false );
|
|
nx.gui.setActive( node, "status/get", true );
|
|
nx.gui.setOpacity( node, "icon", 255 );
|
|
} break;
|
|
case 2: {
|
|
nx.gui.setActive( node, "on", false );
|
|
nx.gui.setActive( node, "off", true );
|
|
nx.gui.setColor( node, "off", cc.Color.GRAY );
|
|
nx.gui.setActive( node, "done", true );
|
|
nx.gui.setActive( node, "status/wait", false );
|
|
nx.gui.setActive( node, "status/got", true );
|
|
nx.gui.setActive( node, "status/get", false );
|
|
nx.gui.setOpacity( node, "icon", 180 );
|
|
} break;
|
|
default: {
|
|
nx.gui.setActive( node, "on", false );
|
|
nx.gui.setActive( node, "off", true );
|
|
nx.gui.setColor( node, "off", cc.Color.WHITE );
|
|
nx.gui.setActive( node, "done", false );
|
|
nx.gui.setActive( node, "status/wait", true );
|
|
nx.gui.setActive( node, "status/got", false );
|
|
nx.gui.setActive( node, "status/get", false );
|
|
nx.gui.setOpacity( node, "icon", 255 );
|
|
} break;
|
|
}
|
|
}
|
|
},
|
|
|
|
// 点击领取
|
|
onTouchGet: function( _day ) {
|
|
|
|
let day = parseInt( _day ) || 0;
|
|
if( day < 1 || day > 7 ) {
|
|
return;
|
|
}
|
|
|
|
STModel.getInstance().reqSignGet( day, ( _ret, _data ) => {
|
|
if( !_ret ) {
|
|
nx.tbox( _data );
|
|
return;
|
|
}
|
|
this.onFresh();
|
|
} );
|
|
},
|
|
|
|
} );
|