Files
fc/dev/project/library/imports/c0/c04bfdff-e61a-405d-8923-83f5851ddd71.js
2026-05-24 10:21:26 +08:00

110 lines
2.9 KiB
JavaScript

"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();