"use strict"; cc._RF.push(module, 'e0f43HN1hFMipyVA+zmbnBW', 'cmp.partner.equip.select.wnd'); // Scripts/mod/partner/cmps/basic/cmp.partner.equip.select.wnd.js "use strict"; /****************************************************************** * * 礼包选择界面 * ******************************************************************/ var BridgeWindow = require("bridge.window"); var FxSVC = require("nx.fx.sv.expand"); var BackPackConst = require("backpack_const"); var BackPackController = require("backpack_controller"); var BBC = BackPackConst.Bag_Code; var BIT = BackPackConst.item_type; var BITT = BackPackConst.item_sub_type; cc.Class({ "extends": BridgeWindow, properties: { svcList: { "default": null, type: FxSVC } }, // 重载:参数打开 onOpenConfigs: function onOpenConfigs(_params) { this.etype = _params.etype.type; this.partner = _params.etype.partner_id; this.cb = _params.cb; var BC = BackPackController.getInstance(); var model = BC.getModel(); var wcfg = game.configs.weapon_data.data_get_skill; // 统计该类型装备列表 var eqms = []; var list = {}; if (this.etype == BIT.ARTIFACTCHIPS) { list = model.getAllBackPackArray(BITT.SPECIAL) || {}; } else if (this.etype == BIT.GOD_EARRING || this.etype == BIT.GOD_RING || this.etype == BIT.GOD_NECKLACE || this.etype == BIT.GOD_BANGLE) { list = model.getAllBackPackArray(BITT.HOLYEQUIPMENT) || {}; } else { list = model.getBagItemList(BBC.EQUIPS) || {}; } // 统计匹配项 for (var i in list) { var eqm = list[i]; if (eqm && eqm.config && eqm.config.type == this.etype) { if (eqm.config.type == BIT.Exclusive) { if (wcfg[eqm.base_id].partner_id == this.partner) { eqms.push(eqm); } } else { eqms.push(eqm); } } } // 排序 var empty = nx.dt.arrEmpty(eqms); if (!empty) { if (this.etype == BIT.ARTIFACTCHIPS) { eqms.sort(function (objA, objB) { if (objA.enchant != objB.enchant) { return objB.enchant - objA.enchant; } else if (objA.config && objB.config) { return objB.config.quality - objA.config.quality; } else { return -1; } }); } else { eqms.sort(Utils.tableUpperSorter(["all_score"])); } } // 刷新 nx.gui.setActive(this.svcList, "empty", empty); this.svcList.rebuild(eqms); this.svcList.binder = this; }, // 选中装备 onEquip: function onEquip(_item) { if (_item && nx.dt.numPositive(_item.id, false)) { nx.dt.fnInvoke(this.cb, _item.id, this); } } }); cc._RF.pop();