127 lines
3.1 KiB
JavaScript
127 lines
3.1 KiB
JavaScript
"use strict";
|
|
cc._RF.push(module, '65acdEna6tJJ7qvqQaz/R5M', 'cmp.item.battle.camp');
|
|
// Scripts/mod/battle/cmp/cmp.item.battle.camp.js
|
|
|
|
"use strict";
|
|
|
|
var SVCItem = require("nx.fx.sv.expand.item");
|
|
var PartnerCalculate = require("partner_calculate");
|
|
cc.Class({
|
|
"extends": SVCItem,
|
|
properties: {
|
|
form_icon: {
|
|
"default": null,
|
|
type: cc.Sprite
|
|
},
|
|
form_btn: {
|
|
"default": null,
|
|
type: cc.Button
|
|
},
|
|
name_lb: {
|
|
"default": null,
|
|
type: cc.Label
|
|
},
|
|
attr_label: {
|
|
"default": null,
|
|
type: cc.RichText
|
|
},
|
|
btnTag: {
|
|
"default": null,
|
|
type: cc.Node
|
|
},
|
|
detailNd: {
|
|
"default": null,
|
|
type: cc.Node
|
|
},
|
|
comeNd: {
|
|
"default": null,
|
|
type: cc.Node
|
|
},
|
|
comeTxt: {
|
|
"default": null,
|
|
type: cc.Node
|
|
}
|
|
},
|
|
// LIFE-CYCLE CALLBACKS:
|
|
|
|
// onLoad () {},
|
|
// 数据重置
|
|
rebind: function rebind(_idx, _data, _key) {
|
|
this._super(_idx, _data, _key);
|
|
|
|
// 刷新
|
|
this.setData(_data);
|
|
},
|
|
// update (dt) {},
|
|
setData: function setData(data) {
|
|
if (nx.dt.objEmpty(data)) {
|
|
return;
|
|
}
|
|
var self = this;
|
|
if (data.is_activate) {
|
|
this.comeNd.active = true;
|
|
this.form_btn.interactable = true;
|
|
} else {
|
|
this.comeNd.active = false;
|
|
this.form_btn.interactable = false;
|
|
}
|
|
var res_id = data.icon % 1000;
|
|
var form_res = cc.js.formatStr("coms/images/camps%s", res_id);
|
|
// if(data.icon > 1005){
|
|
// form_res = PathTool.getCamicoPath("campicon_1000");
|
|
// }else{
|
|
// form_res = PathTool.getCamicoPath("campicon_" + data.icon);
|
|
// }
|
|
cc.loader.loadRes(form_res, cc.SpriteFrame, function (err, res) {
|
|
self.form_icon.spriteFrame = res;
|
|
});
|
|
this.name_lb.string = data.name;
|
|
// -- 属性
|
|
var desc_str = "";
|
|
var index_flag = 0;
|
|
for (var i in data.attr_data) {
|
|
var v = data.attr_data[i];
|
|
if (v.is_activate) {
|
|
index_flag = i;
|
|
}
|
|
}
|
|
var len = Utils.getArrLen(data.attr_data);
|
|
var index = 0;
|
|
var come_str = "";
|
|
for (var _i in data.attr_data) {
|
|
var _v = data.attr_data[_i];
|
|
var str = _v.desc;
|
|
for (var j = 0; j < _v.attrs.length; ++j) {
|
|
var attr = _v.attrs[j];
|
|
var vals = nx.bridge.attrs.fmtAttribute(attr[0], attr[1]);
|
|
if (vals) {
|
|
if (_i == index_flag) {
|
|
str = str + cc.js.formatStr("%s<color=#15f525> %s</color>", vals.name, vals.val);
|
|
} else {
|
|
str = str + cc.js.formatStr("%s %s", vals.name, vals.val);
|
|
}
|
|
}
|
|
}
|
|
if (_i == index_flag) {
|
|
come_str = str;
|
|
str = cc.js.formatStr("<color=#15f525>%s</color>", str);
|
|
} else {
|
|
str = cc.js.formatStr("<color=#ede9e8>%s</color>", str);
|
|
}
|
|
index++;
|
|
if (len != index) {
|
|
desc_str = desc_str + str + "\n";
|
|
} else {
|
|
desc_str = desc_str + str;
|
|
}
|
|
}
|
|
this.attr_label.string = desc_str;
|
|
nx.gui.setString(this.comeTxt, "", come_str);
|
|
},
|
|
onClickshowDetail: function onClickshowDetail() {
|
|
this.btnTag.scaleY = -this.btnTag.scaleY;
|
|
this.detailNd.active = !this.detailNd.active;
|
|
}
|
|
});
|
|
|
|
cc._RF.pop(); |