161 lines
5.0 KiB
JavaScript
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(); |