Files
fc/dev/project/assets/Scripts/mod/guild/base/cmps/cmp.guild.dailyreward.wnd.js
2026-05-23 22:10:14 +08:00

109 lines
3.2 KiB
JavaScript

const BridgeWindow = require( "bridge.window" );
const TipController = require( "tips_controller" );
const GuildController = require( "guild_controller" );
const GuildEvent = require( "guild_event" );
const GuildConst = require( "guild_const" );
cc.Class({
extends: BridgeWindow,
properties: {
nodBase: { default : null, type: cc.Node },
nodRewards: { default : null, type: cc.Node },
},
onOpenConfigs( _params ) {
this.ctrl = _params.mod;
this.freshInfo( _params );
},
/***
* <[13526]:{"flag":0,"post":3,"lev":1,"point":1,
* "pos_reward":0,"rewards1":[{"item_id":3,"num":100},{"item_id":10,"num":100}],
* "rewards2":[{"item_id":3,"num":200},{"item_id":10,"num":200}]}
*/
freshInfo: function( _data ){
if( !_data ){
return;
}
let basenod = nx.gui.find( this.nodBase, "base" );
let extranod = nx.gui.find( this.nodBase, "reward" );
let todaynod = nx.gui.find( this.nodRewards, "today" );
let nextnod = nx.gui.find( this.nodRewards, "next" );
let info = _data;
let prove = info.point == 0 ? nx.text.getKey( "GuildProveNone" ) : nx.text.format( "GuildProveNumber", info.point ) ;
nx.gui.setString( basenod, "career/txt", nx.text.getKey( "GuildJob" + info.post ) );
nx.gui.setString( basenod, "prove/txt", prove );
nx.gui.setString( extranod, "lev/txt", nx.text.format( "LvNumber", info.lev ) );
nx.bridge.setIconS( extranod, "now/ico", "3" );
nx.gui.setString( extranod, "now/txt", info.pos_reward );
let reward1 = [];
let reward2 = [];
for (let i = 0; i < info.rewards1.length; i++) {
let reward = info.rewards1[i];
let rewardn2 = info.rewards2[i];
if( reward ){
let nreward = [ reward.item_id, reward.num ];
reward1.push( nreward );
}
if( rewardn2 ){
let nreward = [ rewardn2.item_id, rewardn2.num ];
reward2.push( nreward );
}
}
nx.gui.setActive( todaynod, "get", info.flag == 0 );
nx.gui.setActive( todaynod, "got", info.flag == 1 );
let cmp = nx.gui.getComponent( todaynod, "awards", "cmp.common.itemlayout" );
if( cmp ){
cmp.rebuild( reward1 );
}
let ncmp = nx.gui.getComponent( nextnod, "awards", "cmp.common.itemlayout" );
if( ncmp ){
ncmp.rebuild( reward2 );
}
},
onTouchGet: function( _btn ){
this.ctrl.reqGetDailyRewardStatus( ( _ret, _data )=>{
if( !_ret ) {
nx.tbox( _data );
return;
}
if( _data.code == 1 ){
let parent = _btn.parent;
nx.gui.setActive( parent, "get", _data.code == 0 );
nx.gui.setActive( parent, "got", _data.code == 1 );
}
} )
},
onTouchHelp: function(){
let TC = TipController.getInstance();
let explain = game.configs.guild_data.data_const.gongzi_decs;
TC.showTextPanel( nx.text.getKey( "GuildRTip" ), explain.desc );
},
});