"use strict"; cc._RF.push(module, 'af634ME3sxGp6W5B2hGzTb3', 'cmp.act.elite.rank.wnd'); // Scripts/mod/acts/elite/cmps/cmp.act.elite.rank.wnd.js "use strict"; /****************************************************************** * * 精英召唤排行榜界面 * ******************************************************************/ var BridgeWindow = require("bridge.window"); var FxSVC = require("nx.fx.sv.expand"); var EliteMod = require("act.elite.mod"); var FxTogs = require("nx.fx.togs"); cc.Class({ "extends": BridgeWindow, properties: { togMenu: { "default": null, type: FxTogs }, svcList: { "default": null, type: FxSVC }, nodSelf: { "default": null, type: cc.Node }, nodEmpty: { "default": null, type: cc.Node } }, // 重载:参数打开 onOpenConfigs: function onOpenConfigs(_params) { // 缓存数据 this.cache1 = null; this.cache2 = null; this.setEmpty(); // Tog监听 this.togMenu.posTog = this.onTogMenu.bind(this); this.togMenu.togTo(0); this.onTogMenu(0); }, // 获取当前配置 getRewards: function getRewards() { var DATA = game.configs.recruit_holiday_lucky_data; return this.today ? DATA.data_day_rank_reward : DATA.data_rank_reward; }, // 置空 setEmpty: function setEmpty() { // 制作演示数据 var rewards = this.getRewards(); if (nx.dt.arrEmpty(rewards)) { nx.gui.setActive(this.nodEmpty, "", true); nx.gui.setActive(this.svcList, "", false); nx.gui.setActive(this.nodSelf, "", false); return; } var args = []; var push = function push(_idx) { var t = { idx: _idx, face_id: 0, rewards: [] }; for (var i = 0; i < rewards.length; ++i) { if (_idx >= rewards[i].min && _idx <= rewards[i].max) { t.rewards = rewards[i].items; break; } } args.push(t); }; for (var i = 1; i <= 10; ++i) { push(i); } nx.gui.setActive(this.nodSelf, "", false); this.freshRank({ my_idx: 0, rank_list: args }); }, // 刷新排行榜 freshRank: function freshRank(_data) { if (nx.dt.objEmpty(_data) || nx.dt.arrEmpty(_data.rank_list)) { this.setEmpty(); return; } nx.gui.setActive(this.nodEmpty, "", false); // 列表 nx.gui.setActive(this.svcList, "", true); this.svcList.rebuild(_data.rank_list); var node = nx.gui.setActive(this.nodSelf, "", true); if (_data.my_idx == 0) { nx.gui.setActive(node, "empty", true); nx.gui.setActive(node, "normal", false); nx.gui.setString(node, "empty/tip", nx.text.getKey(_data.tip || "StepUpNoRank")); return; } nx.gui.setActive(node, "empty", false); nx.gui.setActive(node, "normal", true); var cmp = nx.gui.getComponent(node, "normal", "cmp.act.elite.rank.item"); if (cmp) { cmp.setData({ idx: _data.my_idx, face_id: _data.face_id, name: _data.name, val1: _data.my_val1 }); } }, // 等级切换 onTogMenu: function onTogMenu(_index) { var _this = this; this.today = _index == 0; var model = EliteMod.getInstance(); if (!model) { return; } var cache = this.today ? this.cache1 : this.cache2; if (nx.dt.objNEmpty(cache)) { this.freshRank(cache); return; } model.reqRankList(this.today, function (_ret, _data) { if (!_ret) { _this.setEmpty(); return; } if (_this.today) { _this.cache1 = _data; } else { _this.cache2 = _data; } _this.freshRank(_data); }); } }); cc._RF.pop();