Files
fc/dev/project/library/imports/c4/c4f57ec3-30cd-4dec-a4b5-a97f2bd7f19d.js
2026-05-24 10:21:26 +08:00

161 lines
5.0 KiB
JavaScript

"use strict";
cc._RF.push(module, 'c4f577DMM1N7KS1qX8r1/Gd', 'cmp.planesafk.wnd.useitem');
// Scripts/mod/pve/planesafk/cmp/cmp.planesafk.wnd.useitem.js
"use strict";
var BridgeWindow = require("bridge.window");
var NxExpand = require("nx.fx.sv.expand");
var PlanesafkController = require("planesafk_controller");
var PlanesafkEvent = require("planesafk_event");
var BackpackController = require("backpack_controller");
var TipsController = require("tips_controller");
var HeroController = require("hero_controller");
var PathTool = require("pathtool");
cc.Class({
"extends": BridgeWindow,
properties: {
list: {
"default": null,
type: NxExpand
},
buy_cost: {
"default": null,
type: cc.Node
},
tips: {
"default": null,
type: cc.Node
}
},
// LIFE-CYCLE CALLBACKS:
onLoad: function onLoad() {
this.ctrl = PlanesafkController.getInstance();
this.model = this.ctrl.getModel();
this.bindGEvent(PlanesafkEvent.Get_All_Hero_Event, this.getAllHeros.bind(this));
this.bindGEvent(PlanesafkEvent.Look_Other_Hero_Event, this.lookOtherHeros.bind(this));
this.bindGEvent(PlanesafkEvent.Get_Hero_Live_Event, this.getAllHeros.bind(this));
},
getAllHeros: function getAllHeros() {
var list = this.model.getAllPlanesHeroData();
list.sort(Utils.tableUpperSorter(["star", "lev", "flag"]));
list.sort(Utils.tableLowerSorter(["hp_per"]));
this.setData(list);
},
lookOtherHeros: function lookOtherHeros(data) {
if (!data) return;
this.is_ther_send = false;
this.dic_other_hero[data.pos] = data;
},
start: function start() {},
onOpenConfigs: function onOpenConfigs(setting) {
var item_config = gitemdata(10034);
if (item_config) {
nx.gui.setString(this.buy_cost, "key", item_config.name);
}
var planes_spar_atk_radio = 1300;
var config = gdata("planes_data", "data_const", "planes_spar_atk_radio");
if (config) {
planes_spar_atk_radio = config.val;
}
var per = (planes_spar_atk_radio - 1000) / 10;
this.per = per;
var tip_str = cc.js.formatStr(nx.text.getKey("msg_planesafk_item_use_panel_tip1"), per);
nx.gui.setString(this.tips, "", tip_str);
var list = this.model.getAllPlanesHeroData();
if (list == null) {
this.ctrl.sender28613();
} else {
list.sort(Utils.tableUpperSorter(["star", "lev", "flag"]));
list.sort(Utils.tableLowerSorter(["hp_per"]));
this.setData(list);
}
},
onPreClosed: function onPreClosed() {
this.list.rebuild([]);
},
setData: function setData(list) {
this.hero_list = list || [];
this.list.rebuild(this.hero_list);
},
// 确定使用
onClickBtnRight: function onClickBtnRight() {
if (!this.hero_list) return;
var is_not_have = true;
for (var i in this.hero_list) {
var v = this.hero_list[i];
if (v.hp_per < 100) {
is_not_have = false;
}
}
if (is_not_have) {
nx.tbox("msg_planesafk_item_use_panel_tip3");
return;
}
var item_config = gitemdata(10034);
var count = BackpackController.getInstance().getModel().getItemNumByBid(10034);
if (count <= 0) {
nx.tbox("SummonItemNotEnough");
// BackpackController.getInstance().openTipsSource(true, item_config)
// this.onClickBtnClose()
return;
}
var fun = function fun() {
var id = BackpackController.getInstance().getModel().getBackPackItemIDByBid(10034);
BackpackController.getInstance().sender10515(id, 1);
};
if (item_config) {
var res = PathTool.getItemRes(item_config.icon);
var per = this.per || 30;
var str = cc.js.formatStr(nx.text.getKey("msg_planesafk_item_use_panel_tip4"), res, per);
nx.mbox(str, ["cancel", "confirm"], function (_key, _box) {
_box.close();
if (_key == "confirm") {
fun();
}
});
}
},
// 选中切换
onFocusChanged: function onFocusChanged(_item) {
// 空
if (nx.dt.objEmpty(_item) || nx.dt.objEmpty(_item.mdata)) {
return;
}
// 聚焦
this.list.cleanFocus();
this.list.addFocus(_item.index);
var hero_vo = _item.mdata;
if (hero_vo) {
if (hero_vo.flag == 0) {
var new_hero_vo = HeroController.getInstance().getModel().getHeroById(hero_vo.partner_id);
if (new_hero_vo) {
TipsController.getInstance().showPartnerTips(new_hero_vo);
} else {
nx.tbox("msg_planesafk_hero_from");
}
} else {
if (this.dic_other_hero[hero_vo.partner_id]) {
TipsController.getInstance().showPartnerTips(this.dic_other_hero[hero_vo.partner_id]);
} else {
if (this.is_ther_send) return;
this.is_ther_send = true;
this.ctrl.sender28623(hero_vo.partner_id);
}
}
}
},
// 规则说明
onTouchTip: function onTouchTip() {
var TC = TipsController.getInstance();
if (TC) {
var txt = gdata("planes_data", "data_const", "planes_forever_dock_desc");
TC.showTextPanel("tip", txt.desc);
}
}
// update (dt) {},
});
cc._RF.pop();