const BridgeWindow = require( "bridge.window" ); const ADVCT = require("adventure_controller"); const ADEVT = require("adventure_event"); const NxExpand = require("nx.fx.sv.expand"); cc.Class({ extends: BridgeWindow, properties: { hero_list:{ default:null, type:NxExpand }, timesNd:{ default:null, type:cc.Node } }, // LIFE-CYCLE CALLBACKS: onLoad () { this.ctrl = ADVCT.getInstance(); this.plist = []; this.bindGEvent(ADEVT.UpModel_Up_Cfg,this.updateHeros.bind(this)); }, updateHeros(data){ this.CancelFormPlist(); this.refresh_times = data.times; let partner_list = data.plist; nx.gui.setString(this.timesNd,"",cc.js.formatStr(nx.text.getKey("AdvenRefreTime"),this.refresh_times)); let list = []; for(let i in partner_list){ let bid = partner_list[i]; let cfg = game.configs.partner_data.data_partner_base[bid.bid]; if(cfg && cfg.bustid){ list.push(cfg); } } this.hero_list.rebuild(list); }, pushHeroList(bid){ //五选一 if(this.plist.length > 0)return; this.plist.push({id:bid}); }, start () { }, clickRefreshNewHeros(){ if(this.refresh_times > 0){ this.ctrl.send29509(this.ctrl.getPlayModel()); }else{ nx.tbox("AdvenNoTimes"); } }, onOpenConfigs(params) { this.ctrl.setIsOpenEndlessHero(true); let partner_list = params.partners; this.refresh_times = params.times; nx.gui.setString(this.timesNd,"",cc.js.formatStr(nx.text.getKey("AdvenRefreTime"),this.refresh_times)); let list = []; for(let i in partner_list){ let bid = partner_list[i]; let cfg = game.configs.partner_data.data_partner_base[bid.bid]; if(cfg && cfg.bustid){ list.push(cfg); } } this.hero_list.rebuild(list); }, onPreClosed() { this.hero_list.rebuild([]); this.ctrl.setIsOpenEndlessHero(false); }, ClickSendForm(){ if(nx.dt.arrEmpty(this.plist)){ return nx.tbox("adv_main_str22"); } this.ctrl.send29505(1,this.plist); this.close(); }, CancelFormPlist(){ this.plist = []; this.hero_list.cleanFocus(); }, onfocusHero(_item){ if(!_item)return; this.CancelFormPlist(); this.hero_list.addFocus(_item.index); if(_item.mdata.bid){ this.pushHeroList(_item.mdata.bid); } }, backMenu(){ this.close(); nx.bridge.closePanel("WndAdventureMain"); } // update (dt) {}, });