Files
fc/dev/project/library/imports/85/8506c643-60c8-47d8-b2ec-3296bb450514.js
T

222 lines
6.9 KiB
JavaScript
Raw Normal View History

2026-05-24 10:21:26 +08:00
"use strict";
cc._RF.push(module, '8506cZDYMhH2LLsMpa7RQUU', 'cmp.dungeon.item.main');
// Scripts/mod/pve/dungeon/cmp/cmp.dungeon.item.main.js
"use strict";
var ItemBase = require("nx.fx.sv.expand.item");
var StoneDungeonController = require("stone_dungeon_controller");
var RoleController = require("role_controller");
var ItemLay = require("cmp.common.itemlayout");
cc.Class({
"extends": ItemBase,
properties: {
item_list: {
"default": null,
type: ItemLay
},
diff_bg: {
"default": null,
type: cc.Sprite
},
diff_text: {
"default": null,
type: cc.Label
},
textClear: {
"default": null,
type: cc.RichText
},
textNumber: {
"default": null,
type: cc.Label
},
btnClear: {
"default": null,
type: cc.Node
},
cost_node: {
"default": null,
type: cc.Node
},
cost_num: {
"default": null,
type: cc.Label
},
btnChange: {
"default": null,
type: cc.Node
},
textChange: {
"default": null,
type: cc.Label
},
recommend: {
"default": null,
type: cc.Node
}
},
// LIFE-CYCLE CALLBACKS:
onLoad: function onLoad() {
this.role_vo = RoleController.getInstance().getRoleVo();
this.ctrl = StoneDungeonController.getInstance();
this.model = this.ctrl.getModel();
},
// 数据重置
rebind: function rebind(_idx, _data, _key) {
this._super(_idx, _data, _key);
// 刷新
this.setData(_data);
},
setData: function setData(data) {
if (nx.dt.objEmpty(data)) {
return false;
}
this.dungeonData = data.info;
this.expend = data.tab.expend;
this.free_count = data.tab.count;
this.title_pos = data.tab.title_pos;
this.setChangeData(data.info);
},
setChangeData: function setChangeData() {
var _this = this;
if (this.dungeonData.title_name != "") {
this.diff_text.string = this.dungeonData.title_name;
} else {
this.diff_text.string = "";
}
if (this.title_pos == this.dungeonData.difficulty) {
this.recommend.active = true;
} else {
this.recommend.active = false;
}
var nod = nx.gui.find(this, "bottom/plot");
if (nx.bridge.plot && nx.bridge.plot.isDoing()) {
if (this.dungeonData.difficulty == 1 && this.dungeonData.class_type == 1) {
nod.getComponent("cmp.plot.trigger").pID = "challenge";
nod.getComponent("cmp.plot.trigger").regist();
nx.gui.setActive(nod, "", true);
}
} else {
nx.gui.setActive(nod, "", false);
}
this.cost_node.active = false;
this.btnChange.active = false;
this.btnClear.active = false;
this.textNumber.string = cc.js.formatStr(nx.text.getKey("lab_stone_dungeon_open_fighr_level"), this.dungeonData.power || 0);
this.textNumber.node.active = true;
var is_first = 1;
var clearance = this.model.getPassClearanceID(this.dungeonData.id);
nx.gui.setLocked(this.btnChange, "", false);
// this.btnChange.y = -35;
nx.bridge.setIconS(this.cost_node, "ico", 3);
if (clearance && clearance.status == 1) {
//已经通关的
if (this.role_vo.max_power >= this.dungeonData.power) {
this.textNumber.node.active = false;
this.btnClear.active = true;
if (this.free_count == 0) {
this.textClear.string = nx.text.getKey("btn_stone_dungeon_quickfight");
this.cost_node.active = true;
this.cost_num.string = this.expend;
} else {
this.cost_node.active = false;
this.textClear.string = nx.text.getKey("btn_stone_dungeon_quickfight");
}
this.model.setCurChangeSweep(this.dungeonData.id);
} else {
this.btnClear.active = false;
this.btnChange.active = true;
// this.btnChange.y = -15;
this.textChange.string = nx.text.getKey("lab_stone_dungeon_no_open");
nx.gui.setLocked(this.btnChange, "", true);
}
is_first = null;
} else {
this.btnClear.active = false;
if (this.role_vo.max_power >= this.dungeonData.power) {
this.textNumber.node.active = false;
this.btnChange.active = true;
var status = false;
if (this.role_vo.lev < this.dungeonData.lev_limit) {
var str = cc.js.formatStr(nx.text.getKey("lab_stone_dungeon_open_level_haveval"), this.dungeonData.lev_limit);
this.textChange.string = str;
status = true;
} else {
if (this.free_count == 0) {
//scale=0.25
this.textChange.string = nx.text.getKey("btn_stone_dungeon_fight");
this.cost_node.active = true;
this.cost_num.string = this.expend;
// let item_res = PathTool.queryIconPath(3);
// cc.loader.loadRes(item_res,cc.SpriteFrame,(err,obj)=>{
// if(!err){
// this.textChange.addSpriteFrame = obj;
// }
// });
} else {
this.cost_node.active = false;
this.textChange.string = nx.text.getKey("btn_stone_dungeon_fight");
}
}
nx.gui.setLocked(this.btnChange, "", !!status);
} else {
this.btnChange.active = true;
// this.btnChange.y = -15;
var str = nx.text.getKey("lab_stone_dungeon_no_open_have_color");
if (this.role_vo.lev < this.dungeonData.lev_limit) {
str = cc.js.formatStr(nx.text.getKey("lab_stone_dungeon_open_level_haveval"), this.dungeonData.lev_limit);
}
this.textChange.string = str;
nx.gui.setLocked(this.btnChange, "", true);
}
}
cc.loader.loadRes(PathTool.getIconPath("dungeon", this.dungeonData.pis_str), cc.SpriteFrame, function (err, resObject) {
_this.diff_bg.spriteFrame = resObject;
});
this.data_list = [];
// 首通奖励
this.firstAward(is_first);
// 展示奖励
this.showAward(is_first);
},
firstAward: function firstAward(is_first) {
if (!is_first) return;
if (this.dungeonData.first_items[0]) {
this.data_list.push({
bid: this.dungeonData.first_items[0][0],
num: this.dungeonData.first_items[0][1]
});
}
},
showAward: function showAward(is_first) {
var _flag = is_first && 1 || 0;
if (!this.dungeonData.first_items[0]) {
_flag = 0;
is_first = null;
}
for (var i in this.dungeonData.show_items) {
this.data_list.push({
bid: this.dungeonData.show_items[i][0],
num: this.dungeonData.show_items[i][1]
});
}
this.item_list.rebuild(this.data_list);
},
onDisable: function onDisable() {
this.item_list.rebuild([]);
},
onClickClear: function onClickClear() {
this.ctrl.send13032(this.dungeonData.id);
},
onClickChange: function onClickChange() {
if (this.role_vo.lev < this.dungeonData.lev_limit) {
nx.tbox(nx.text.getKey("lab_stone_dungeon_open_level") + this.dungeonData.lev_limit);
} else {
this.ctrl.send13031(this.dungeonData.id);
}
} // update (dt) {},
});
cc._RF.pop();