102 lines
2.5 KiB
JavaScript
102 lines
2.5 KiB
JavaScript
|
import ItemUtil from "../ts/core/ItemUtil";
|
|||
|
|
|||
|
cc.Class({
|
|||
|
extends: cc.Component,
|
|||
|
|
|||
|
properties: {
|
|||
|
itemIcon: cc.Sprite,
|
|||
|
itemDetail: cc.Prefab,
|
|||
|
schemeItemDetail: cc.Prefab,
|
|||
|
gradeFlag: cc.Node,
|
|||
|
itemBg: cc.Node,
|
|||
|
maskIcon: cc.Sprite
|
|||
|
},
|
|||
|
|
|||
|
onLoad() {
|
|||
|
//this.levelNode = this.itemBg.getChildByName('level');
|
|||
|
this.selectedNode = this.node.getChildByName('selected');
|
|||
|
if (this.selectedNode) {
|
|||
|
this.selectedNode.active = false;
|
|||
|
}
|
|||
|
},
|
|||
|
|
|||
|
reset() {
|
|||
|
this.itemBg.active = false;
|
|||
|
this.itemInfo = null;
|
|||
|
},
|
|||
|
|
|||
|
/*
|
|||
|
* type: 0,普通,1,屬性方案使用
|
|||
|
* onUse: 屬性方案中是否已裝載
|
|||
|
*/
|
|||
|
loadInfo(info, type = 0, onUse = false) {
|
|||
|
this.itemInfo = info;
|
|||
|
this.itemBg.active = true;
|
|||
|
this.itemIcon.spriteFrame = ItemUtil.getItemIconBy(this.itemInfo);
|
|||
|
if (this.itemBg.getChildByName('level')) {
|
|||
|
this.itemBg.getChildByName('level').getComponent(cc.Label).string = this.itemInfo.Grade;
|
|||
|
}
|
|||
|
if (this.gradeFlag) {
|
|||
|
if (this.itemInfo.Grade > 1) {
|
|||
|
this.gradeFlag.active = true;
|
|||
|
} else {
|
|||
|
this.gradeFlag.active = false;
|
|||
|
}
|
|||
|
}
|
|||
|
this.type = type;
|
|||
|
this.onUse = onUse;
|
|||
|
|
|||
|
|
|||
|
if (ItemUtil.isBaldric(info.EIndex) && (info.flag == 1||info.BaseAttr=="[]")){
|
|||
|
this.maskIcon.spriteFrame = ItemUtil.getItemIconBy({ icon: 1000 });
|
|||
|
this.gradeFlag.active = false;
|
|||
|
this.itemBg.getChildByName('level').getComponent(cc.Label).string =""
|
|||
|
}
|
|||
|
|
|||
|
// if (ItemUtil.isShowDetail()||ItemUtil.isEquip(info)) return;
|
|||
|
|
|||
|
},
|
|||
|
|
|||
|
selected() {
|
|||
|
if (this.selectedNode) {
|
|||
|
this.selectedNode.active = true;
|
|||
|
}
|
|||
|
if (this.itemInfo != null) {
|
|||
|
let canvas = cc.find('Canvas');
|
|||
|
let prefab = this.itemDetail;
|
|||
|
if (ItemUtil.isBaldric(this.itemInfo.EIndex)) {
|
|||
|
ItemUtil.showMenu = true;
|
|||
|
ItemUtil.showAccessDetail(this.itemInfo, this.onUse);
|
|||
|
return;
|
|||
|
}
|
|||
|
if (this.type == 1) {
|
|||
|
prefab = this.schemeItemDetail;
|
|||
|
}
|
|||
|
console.log(prefab)
|
|||
|
if (canvas.getChildByName('EquipItemDetail') == null) {
|
|||
|
let detail = cc.instantiate(prefab);
|
|||
|
detail.parent = canvas;
|
|||
|
let name = 'EquipItemDetail';
|
|||
|
if (this.type == 1) {
|
|||
|
name = 'SchemeEquipItemDetail';
|
|||
|
}
|
|||
|
detail.name = name;
|
|||
|
detail.getComponent(name).loadInfo(this.itemInfo, this.onUse);
|
|||
|
let schemePanel = cc.find('MainUI/SchemePanel', canvas);
|
|||
|
if (schemePanel != null) {
|
|||
|
detail.getComponent(name).showOperation();
|
|||
|
} else {
|
|||
|
let bagLayer = cc.find('MainUI/BagPanel', canvas);
|
|||
|
if (bagLayer != null) {
|
|||
|
detail.getComponent(name).showOperation();
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
},
|
|||
|
|
|||
|
unSelected() {
|
|||
|
this.selectedNode.active = false;
|
|||
|
},
|
|||
|
});
|