"use strict"; cc._RF.push(module, 'd809eq70CdAYL62CqphGei2', 'cmp.campfight.mons'); // Scripts/mod/pvp/campfight/cmp/cmp.campfight.mons.js "use strict"; var CampfightConst = require("campfight.const"); var CampfightMod = require("campfight.mod"); var BridgeCmp = require("bridge.component"); var NxExpand = require("nx.fx.sv.expand"); var HeroController = require("hero_controller"); var HeroConst = require("hero_const"); var PartnerConst = require("partner_const"); var RCT = require("role_controller"); var TipsController = require("tips_controller"); cc.Class({ "extends": BridgeCmp, properties: { list: { "default": null, type: NxExpand }, tipNd: { "default": null, type: cc.Node }, selfItem: { "default": null, type: cc.Node }, fabHead: { "default": null, type: cc.Prefab } }, // LIFE-CYCLE CALLBACKS: onLoad: function onLoad() { this._super(); this.mod = CampfightMod.getInstance(); this.bindGEvent(CampfightConst.EVT_CAMP_MONS_UI, this.freshList.bind(this)); }, freshList: function freshList(data) { if (nx.dt.objEmpty(data)) { return; } this.list.rebuild(data.rank_list); var self_data = null; var selfRole = RCT.getInstance().getRoleVo(); for (var i in data.rank_list) { var rank = data.rank_list[i]; if (rank.rid == selfRole.rid && rank.srv_id == selfRole.srv_id) { self_data = rank; } } this.setSelfRank(self_data, selfRole, data.my_dps); }, onEnable: function onEnable() { this.mod.reqMonsDmgRank(); var period = this.mod.getCurPeriod(); var key = CampfightConst.NameToPVE[period]; nx.gui.setString(this.tipNd, "", nx.text.getKey(key)); }, onDisable: function onDisable() { this.list.rebuild([]); // 监听事件释放 this.unbindGEvents(); }, onDestroy: function onDestroy() {}, setSelfRank: function setSelfRank(data, role_vo, my_dps) { nx.gui.setString(this.selfItem, "name", role_vo.name); if (!this.myHead) { this.myHead = cc.instantiate(this.fabHead); var par = nx.gui.find(this.selfItem, "partner"); this.myHead.parent = par; } var cmp = nx.gui.getComponent(this.myHead, "", "cmp.common.header"); if (cmp) { cmp.setData(role_vo); } if (data) { if (data.rank <= 3) { nx.gui.setActive(this.selfItem, String(data.rank), true); } else { nx.gui.setActive(this.selfItem, "rank", true); nx.gui.setString(this.selfItem, "rank", data.rank); } nx.gui.setString(this.selfItem, "dmg/num", my_dps); } else { nx.gui.setActive(this.selfItem, "rank", true); nx.gui.setString(this.selfItem, "rank", nx.text.getKey("Rank0")); nx.gui.setString(this.selfItem, "dmg/num", "0"); } }, //商店 onClickShop: function onClickShop() {}, onClickHelp: function onClickHelp() { var TC = TipsController.getInstance(); if (TC) { var config = game.configs.arena_camp_data.data_const.monster_desc; TC.showTextPanel(null, config.desc); } }, onClickBat: function onClickBat() { var sta = this.mod.getActStatus(); if (sta == 1) { this.mod.reqBatBoss(); } else { nx.tbox("CampFitOneEnd"); } }, onClickForm: function onClickForm() { var sta = this.mod.getActStatus(); if (sta == 1) { HeroController.getInstance().openFormGoFightPanel(true, PartnerConst.Fun_Form.YearBoss, { period: this.mod.getCurPeriod(), need_hide_top: true }, HeroConst.FormShowType.eFormSave); } else { nx.tbox("CampFitOneEnd"); } }, onClickRank: function onClickRank() { nx.bridge.createPanel("WndCampfightRank"); } // update (dt) {}, }); cc._RF.pop();