"use strict"; cc._RF.push(module, 'c04bf3/5hpAXYkjg/WFHd1x', 'cmp.partner.equip.select.item'); // Scripts/mod/partner/cmps/basic/cmp.partner.equip.select.item.js "use strict"; var ItemBase = require("cmp.item.base"); var SVCItem = require("nx.fx.sv.expand.item"); var TipsController = require("tips_controller"); var BackPackConst = require("backpack_const"); var BIT = BackPackConst.item_type; cc.Class({ "extends": SVCItem, properties: { cmpItem: { "default": null, type: ItemBase, displayName: "图标" } }, // 数据重置 rebind: function rebind(_idx, _data, _key) { this._super(_idx, _data, _key); // 刷新 this.setData(_data); }, // 重置 setData: function setData(_data, _count) { this.mdata = _data; this.cmpItem.setData(_data, _count); // 区别刷新 if (_data.type == BIT.ARTIFACTCHIPS) { this.freshArtifact(); } else { this.freshEquipment(); } }, // 神装刷新 freshArtifact: function freshArtifact() { // 显隐控制 nx.gui.setActive(this, "level", false); nx.gui.setActive(this, "score", false); nx.gui.setActive(this, "skills", false); // 刷新属性 var cmp = nx.gui.getComponent(this, "atts", "cmp.item.detail.prop.base"); if (cmp) { cmp.setData(this.mdata, this.mdata.config, false); } // 刷新技能 var extra = this.mdata.extra; if (nx.dt.arrNEmpty(extra)) { // 统计 var sks = []; for (var i in extra) { var ext = extra[i]; if (ext && (ext.extra_k == 1 || ext.extra_k == 2 || ext.extra_k == 8)) { var cfg = gskilldata("data_get_skill", ext.extra_v); if (cfg) { sks.push(cfg); } } } if (nx.dt.arrNEmpty(sks)) { var root = nx.gui.setActive(this, "skills", true); var chds = root.children; nx.gui.gocChildren(root, "", sks.length, chds[0]); for (var _i = 0; _i < sks.length; ++_i) { var sk = sks[_i]; nx.gui.setString(chds[_i], "", nx.text.format("bracket", sk.name)); } } } }, // 装备刷新 freshEquipment: function freshEquipment() { // 显隐控制 nx.gui.setActive(this, "level", true); nx.gui.setActive(this, "score", true); nx.gui.setActive(this, "skills", false); // 刷新 nx.gui.setString(this, "level/txt", this.mdata.lev); nx.gui.setString(this, "score/txt", this.mdata.all_score); // 刷新 var cmp = nx.gui.getComponent(this, "atts", "cmp.item.detail.prop.base"); if (cmp) { cmp.setData(this.mdata, this.mdata.config, false); } }, // 点击装备 onTouchEquip: function onTouchEquip() { var svc = this.node.svc; if (svc && svc.binder && svc.binder.onEquip) { svc.binder.onEquip(this.mdata); } }, onTouchIcon: function onTouchIcon() { var TC = TipsController.getInstance(); if (TC && this.mdata) { TC.showItemTips(this.mdata); } } }); cc._RF.pop();