Files
fc/dev/project/library/imports/37/37446f18-b7f4-4ed0-8c50-3fc6408a7834.js
T
2026-05-24 10:21:26 +08:00

209 lines
5.6 KiB
JavaScript

"use strict";
cc._RF.push(module, '374468Yt/RO0IxQP8ZAing0', 'cmp.chat.wnd.inputlist');
// Scripts/mod/chat/cmp/cmp.chat.wnd.inputlist.js
"use strict";
var BridgeComp = require("bridge.component");
var FxSVC = require("nx.fx.sv.expand");
var FxTogs = require("nx.fx.togs");
var ChatItemController = require("chat_item_controller");
var ChatCtrl = require("chat_controller");
var BackPackConst = require("backpack_const");
var ChatEvent = require("chat_event");
var ItemEnum = {
"1": {
source: "face_item",
width: 60,
height: 60,
col: 8
},
"2": {
source: "goods_item",
width: 90,
height: 90,
col: 5
},
"3": {
source: "goods_item",
width: 90,
height: 90,
col: 5
}
};
cc.Class({
"extends": BridgeComp,
properties: {
togs: {
"default": null,
type: FxTogs
},
goods_list: {
"default": null,
type: FxSVC
},
face_list: {
"default": null,
type: FxSVC
},
goods_nd: {
"default": null,
type: cc.Node
},
face_nd: {
"default": null,
type: cc.Node
}
},
// LIFE-CYCLE CALLBACKS:
onLoad: function onLoad() {
this._super();
this.chat_item_ctrl = ChatItemController.getInstance();
this.ctrl = ChatCtrl.getInstance();
this.cur_tab = null;
this.item_lists = {};
this.bindGEvent(ChatEvent.INPUT_SELECT_ITEM, this.selectOnce.bind(this));
this.togs.posTog = this.onTogMenu.bind(this);
this.togs.togTo(0);
},
selectOnce: function selectOnce(_key, _params) {
if (_key == 1) {
this.selectFaceCB(_params.face_text);
} else if (_key == 2) {
this.selectItemCB(_params.item_data);
} else if (_key == 3) {
this.selectEquipCB(_params);
}
},
start: function start() {},
onEnable: function onEnable() {
this.togs.togTo(0);
this.selectTab(1);
},
onDisable: function onDisable() {
this.face_list.rebuild([]);
this.goods_list.rebuild([]);
},
setSelectCB: function setSelectCB(select_cb) {
this.select_cb = select_cb;
},
onTogMenu: function onTogMenu(_type) {
this.selectTab(_type + 1);
},
selectTab: function selectTab(tab_index) {
this.updateDataList(tab_index);
this.cur_tab = tab_index;
},
// updateCurPanel: function(list_index) {
// if (list_index && this.item_lists[list_index]) {
// this.updateDataList(list_index);
// this.item_lists[list_index].setRootVisible(true);
// } else {
// this.createItemList(list_index);
// }
// },
updateDataList: function updateDataList(list_index) {
var list_data = [];
var select_cb = null;
var extend = {};
var is_face = false;
if (list_index === 1) {
var face_cfgs = game.configs.face_data.data_biaoqing;
for (var face_i in face_cfgs) {
var v = face_cfgs[face_i];
list_data.push(v);
}
// select_cb = this.selectFaceCB.bind(this);
is_face = true;
} else if (list_index === 2) {
var BackpackController = require("backpack_controller");
var bag_model = BackpackController.getInstance().getModel();
var bag_data = bag_model.getItemListForShare();
for (var i in bag_data) {
var _v = {};
_v.info = bag_data[i];
list_data.push(_v);
}
// select_cb = this.selectItemCB.bind(this);
} else if (list_index === 3) {
extend.is_eqm = true;
var HeroController = require("hero_controller");
var hero_mode = HeroController.getInstance().getModel();
var hero_list = hero_mode.getHeroList();
for (var hero_i in hero_list) {
var hero_info = hero_list[hero_i];
for (var equip_i in hero_info.eqm_list) {
hero_info.partner_data = hero_info;
list_data.push({
item_data: hero_info.eqm_list[equip_i],
hero_info: hero_info
});
}
}
// select_cb = this.selectEquipCB.bind(this);
}
if (is_face) {
this.goods_nd.active = false;
this.face_nd.active = true;
this.face_list.svcKey = list_index;
this.face_list.rebuild(list_data);
} else {
this.goods_nd.active = true;
this.face_nd.active = false;
this.goods_list.svcKey = list_index;
this.goods_list.rebuild(list_data);
}
},
selectFaceCB: function selectFaceCB(face_text) {
if (face_text && this.select_cb) {
this.select_cb(face_text);
}
},
selectItemCB: function selectItemCB(item_data) {
if (item_data && item_data.config) {
this.chat_item_ctrl.send10535(1, item_data.id, 0, 1);
}
;
},
selectEquipCB: function selectEquipCB(_params) {
var equip_data = _params.item_data;
var hero_info = _params.hero_info;
// 区分装备和符文
if (equip_data && equip_data.config) {
if (BackPackConst.checkIsEquip(equip_data.config.type)) {
this.chat_item_ctrl.send10535(4, equip_data.id, hero_info.partner_id, 2);
} else if (BackPackConst.checkIsArtifact(equip_data.config.type)) {
this.chat_item_ctrl.send10535(2, equip_data.id, hero_info.partner_id, 2);
}
}
},
// 选中切换
onFocusFace: function onFocusFace(_item) {
// 空
if (nx.dt.objEmpty(_item) || nx.dt.objEmpty(_item.mdata)) {
return;
}
// 聚焦
this.face_list.cleanFocus();
this.face_list.addFocus(_item.index);
},
// 选中切换
onFocusGoods: function onFocusGoods(_item) {
// 空
if (nx.dt.objEmpty(_item) || nx.dt.objEmpty(_item.mdata)) {
return;
}
// 聚焦
this.goods_list.cleanFocus();
this.goods_list.addFocus(_item.index);
}
// update (dt) {},
});
cc._RF.pop();