const BridgeWindow = require("bridge.window"); const TowerMod = require("startower.mod"); const StartowerEvent = require("startower.define"); const ItemLayout = require("cmp.common.itemlayout"); cc.Class({ extends: BridgeWindow, properties: { list:{ default:null, type:ItemLayout }, fast_desc:{ default:null, type:cc.Label }, power_desc:{ default:null, type:cc.Label }, title:{ default:null, type:cc.Label }, boss_power:{ default:null, type:cc.RichText }, boss_detail:{ default:null, type:cc.RichText }, fabSmod:{ default:null, type:cc.Prefab }, bgNd:{ default:null, type:cc.Node } }, // LIFE-CYCLE CALLBACKS: onLoad() { this.ctrl = TowerMod.getInstance(); this.bindGEvent( StartowerEvent.Video_Data_Event, this.updateVideoData.bind( this ) ); this.bindGEvent( StartowerEvent.Fight_Success_Event, this.updateFightSuccess.bind( this ) ); }, updateFightSuccess(){ //挑战完成请求一下录像,可能自己破记录了 if(this.data){ this.ctrl.sender11325(this.data.lev); } this.updateGoodsList(); }, updateVideoData(data){ this.video_data = data; this.fast_desc.string = nx.text.getKey("lab_star_tower_main_window_tip8"); this.power_desc.string = nx.text.getKey("lab_star_tower_main_window_tip9"); var list = data.tower_replay_data || {}; for(var i in list){ var v = list[i]; if(v && v.type == 1){ var str = cc.js.formatStr(nx.text.getKey("lab_star_tower_main_window_tip10"),v.name); this.fast_desc.string = str; }else{ var str = cc.js.formatStr(nx.text.getKey("lab_star_tower_main_window_tip11"),v.name) this.power_desc.string = str; } } }, start() { }, onOpenConfigs(data) { this.data = data; this.updateDate(); }, onPreClosed() { this.list.rebuild([]); }, updateDate:function() { if(!this.data)return; let title = this.data.name || ""; this.title.string = title; this.updateModel(this.data); if(this.data){ this.ctrl.sender11325(this.data.lev); } this.updateDesc(); this.updateGoodsList(); }, updateModel(data){ if(data.unit_id){ this.splayer = cc.instantiate(this.fabSmod); this.splayer.parent = this.bgNd; this.splayer.position = cc.v2(0,-80); let cmp = this.splayer.getComponent("cmp.partner.smod"); cmp.setData(data.unit_id,true,false); } }, updateDesc:function(){ //推荐战力 var power = this.data.recommend || 0; var str = cc.js.formatStr(nx.text.getKey("lab_star_tower_main_window_tip13"),power) this.boss_power.string = str; let detail = game.configs.star_tower_data.data_get_floor_award[this.data.lev]; this.boss_detail.string = detail; }, //更新物品消耗 updateGoodsList:function(){ if(!this.data)return; // for(var i in this.item_list){ // this.item_list[i].setVisible(false); // } var expend_list = []; var now_id = this.ctrl.getNowTowerId() || 0; if(now_id < this.data.lev){ var first_id = 0; var num = 0; if(this.data.first_show[0] && this.data.first_show[0][0] && this.data.first_show[0][1]){ first_id = this.data.first_show[0][0]; num = this.data.first_show[0][1]; } expend_list.push({bid:first_id,num:num}); } for(var j in this.data.award){ let itemdata = this.data.award[j]; expend_list.push({bid:itemdata[0],num:itemdata[1]}); } this.list.rebuild(expend_list); }, // update (dt) {}, });