/****************************************************************** * * 解锁条件界面 * ******************************************************************/ const BridgeWindow = require( "bridge.window" ); const ItemBase = require( "cmp.item.base" ); const HeroControl = require( "hero_controller" ); const KernelController = require( "halidom_controller" ); const BackpackController = require( "backpack_controller" ); const BackPackConst = require( "backpack_const" ); cc.Class( { extends: BridgeWindow, properties: { nodMat: { default: null, type: cc.Node, }, nodOps: { default: null, type: cc.Node, }, }, // 重载:参数打开 onOpenConfigs: function( _params ) { // 当前的初始解锁达成状态 this.info = _params; // this.cb = _params.cb; // 道具刷新 this.freshInfo( 0 ); }, freshInfo: function( _data ){ let cmp = this.nodMat.getComponent( ItemBase ); cmp.setData( _data ); }, onTouchSelect: function( ){ // 需要的星级限制 let needStar = game.configs.halidom_data.data_base[this.info].loss[0][1]; let partners = HeroControl.getInstance().getModel().getDeepHeroListByCamp( this.info ); let canUseLst = []; let HC = HeroControl.getInstance(); partners.forEach( _partner => { if( _partner.is_in_form == 0 && _partner.camp_type == this.info && _partner.star == needStar ){ canUseLst.push( _partner ); } } ) let nowSelect = []; let cmp = this.nodMat.getComponent( ItemBase ); if( cmp ){ if( cmp.mdata ){ nowSelect.push( cmp.mdata ); } } let args = { partners: canUseLst, count : 1, selects : nowSelect, } HC.openPartnerSelector( true, args, ( _selects => { this.freshInfo( _selects[0] || 0 ); HC.openPartnerSelector( false ); } ) ); }, onTouchUnlocked: function(){ let KC = KernelController.getInstance(); let cmp = this.nodMat.getComponent( ItemBase ); if( KC ){ ///[{"id":169}] if( cmp ){ let id = cmp.mdata.id; if( nx.dt.objEmpty( cmp.mdata ) ){ nx.tbox( nx.text.getKey( "lab_selectHeroMaterial" )); return; } KC.sender22202( this.info, [{id: id }] ); } KC.openKernelUnlocked( false ); } // nx.dt.fnInvoke( this.cb , data ); }, } );