Files
fc/dev/project/library/imports/4d/4d716dc0-7703-41db-beb9-637e7a89e53c.js
2026-05-24 10:21:26 +08:00

337 lines
11 KiB
JavaScript

"use strict";
cc._RF.push(module, '4d7163AdwNB2765Y356ieU8', 'cmp.pvp.rank.wnd');
// Scripts/mod/pvp/cmp/cmp.pvp.rank.wnd.js
"use strict";
var BridgeWindow = require("bridge.window");
var ArenaEvent = require("arena_event");
var FxSVC = require("nx.fx.sv.expand");
var ArenaController = require("arena_controller");
var FxTogs = require("nx.fx.togs");
var RoleEvent = require("role_event");
var LadderEvent = require("ladder_event");
var RoleController = require("role_controller");
var defaultList = 3;
// 标签页对应关系
var TabPage = [{
key: "RankNow",
"goto": 0
}, {
key: "DailyAwards" || "RankAwards",
"goto": 1
}, {
key: "SeasonAwards",
"goto": 2
}];
cc.Class({
"extends": BridgeWindow,
properties: {
nodOps: {
"default": null,
type: cc.Node
},
nodToggle: {
"default": null,
type: FxTogs
},
nodLst: {
"default": null,
type: FxSVC
},
fabSelfAward: {
"default": null,
type: cc.Prefab
},
fabSelfArena: {
"default": null,
type: cc.Prefab
},
fabSelfLadder: {
"default": null,
type: cc.Prefab
},
fabSelfWeekChampion: {
"default": null,
type: cc.Prefab
},
fabItemArena: {
"default": null,
type: cc.Prefab
},
fabItemAward: {
"default": null,
type: cc.Prefab
},
fabItemLadder: {
"default": null,
type: cc.Prefab
},
fabItemFirst: {
"default": null,
type: cc.Prefab
},
fabItemWeekChampion: {
"default": null,
type: cc.Prefab
}
},
onLoad: function onLoad() {
this.bindGEvent(ArenaEvent.UpdateLoopChallengeRank, this.freshOtherUI.bind(this));
this.bindGEvent(RoleEvent.WorshipOtherRole, this.freshOneWorship.bind(this));
this.bindGEvent(LadderEvent.UpdateLadderRankData, this.freshLadderUI.bind(this));
this.bindGEvent(ArenaEvent.UpdateChampionRankEvent, this.freshWeeklyChampionUI.bind(this));
// Tog监听
this.nodToggle.posTog = this.onTogMenu.bind(this);
this.loadPrefab();
},
loadPrefab: function loadPrefab() {
if (nx.gui.find(this.nodLst, "self_rank").children.length == 0) {
var itemnod = cc.instantiate(this.fabSelfAward);
itemnod.parent = nx.gui.find(this.nodLst, "self_rank");
var item5nod = cc.instantiate(this.fabSelfArena);
item5nod.parent = nx.gui.find(this.nodLst, "self_rank");
var itemlnod = cc.instantiate(this.fabSelfLadder);
itemlnod.parent = nx.gui.find(this.nodLst, "self_rank");
var fabSelfWeekChampion = cc.instantiate(this.fabSelfWeekChampion);
fabSelfWeekChampion.parent = nx.gui.find(this.nodLst, "self_rank");
nx.gui.hideAllChildren(this.nodLst, "self_rank");
}
if (nx.gui.find(this, "templates").children.length == 0) {
var fabItemArena = cc.instantiate(this.fabItemArena);
fabItemArena.parent = nx.gui.find(this, "templates");
var fabItemAward = cc.instantiate(this.fabItemAward);
fabItemAward.parent = nx.gui.find(this, "templates");
var fabItemLadder = cc.instantiate(this.fabItemLadder);
fabItemLadder.parent = nx.gui.find(this, "templates");
var itemfnod = cc.instantiate(this.fabItemFirst);
itemfnod.parent = nx.gui.find(this, "templates");
var fabItemWeekChampion = cc.instantiate(this.fabItemWeekChampion);
fabItemWeekChampion.parent = nx.gui.find(this, "templates");
}
},
onOpenConfigs: function onOpenConfigs(_params) {
this.dfg = _params.dfg;
this.sfg = _params.sfg;
this.cb = _params.cb;
this.show = _params.show;
var ops = _params.ops;
var chd = this.nodOps.children;
this.defaultDesc = _params.desc;
var len = _params.len ? _params.len : defaultList;
nx.gui.gocChildren(this.nodOps, "", len);
var tcmp = nx.gui.getComponent(this.nodOps, "", "nx.fx.togs");
if (tcmp) {
// 重建标签结构
tcmp.rebuildTogs();
// 标签显示切换
tcmp._freshTogShow();
}
var _goto = 0;
for (var i = 0; i < chd.length; i++) {
var op = ops[i];
if (!op || nx.dt.strEmpty(op)) {
nx.gui.setActive(chd[i], "", false);
continue;
}
if (this.show == op) {
_goto = i;
}
nx.gui.setActive(chd[i], "", true);
nx.gui.setString(chd[i], "on/txt", nx.text.getKey(op));
nx.gui.setString(chd[i], "off/txt", nx.text.getKey(op));
}
// TabPage.forEach( _tab => {
// if( this.show == _tab.key ){
// goto = _tab.goto;
// }
// } )
this.nodToggle.togTo(_goto);
this.activeMenu(_goto + 1);
// this.freshData();
},
// 激活菜单
activeMenu: function activeMenu(_bagCode) {
// console.log( "背包切换:", _bagCode );
if (this.curType == _bagCode) {
return;
}
this.curType = _bagCode;
if (_bagCode == 1) {
this.freshInfo();
var T = nx.gui.find(this.node, "templates/itemT5");
this.nodLst.tmpItem = T;
this.nodLst.rebuild([]);
this.nodLst.tmpItem = null;
nx.dt.fnInvoke(this.cb);
}
if (_bagCode == 2) {
var _T = nx.gui.find(this.node, "templates/award");
// widget.bottom = 20.70;
// widget.updateAlignment();
this.nodLst.tmpItem = _T;
this.freshData(this.dfg);
this.freshInfo();
}
if (_bagCode == 3) {
var _T2 = nx.gui.find(this.node, "templates/award");
// widget.bottom = 20.70;
// widget.updateAlignment();
this.nodLst.tmpItem = _T2;
this.freshData(this.sfg);
this.freshInfo();
}
if (_bagCode == 4) {
var _T3 = nx.gui.find(this.node, "templates/faward");
// widget.bottom = 20.70;
// widget.updateAlignment();
this.nodLst.tmpItem = _T3;
this.freshData(this.dfg);
this.freshInfo();
}
if (_bagCode == 5) {
var _T4 = nx.gui.find(this.node, "templates/faward");
// widget.bottom = 20.70;
// widget.updateAlignment();
this.nodLst.tmpItem = _T4;
this.freshData(this.sfg);
this.freshInfo();
}
},
dealSameCmp: function dealSameCmp(_nod, _data, _desc) {
var tnod = nx.gui.find(this.nodLst, "title");
nx.gui.setString(tnod, "nod_rank/score", _desc);
var rank_node = _nod;
nx.gui.setActive(rank_node, "icon_" + _data.rank, _data.rank > 0 && _data.rank < 4);
nx.gui.setActive(rank_node, "icon_4", _data.rank >= 4);
if (_data.rank >= 4) {
nx.gui.setString(rank_node, "txt", _data.rank);
}
if (_data.rank == 0) {
nx.gui.setString(rank_node, "txt2", nx.text.getKey("Rank0"));
}
nx.gui.setActive(tnod, "nod_rank", true);
},
freshOtherUI: function freshOtherUI(_data) {
// 设置顶部 标题
var T = nx.gui.find(this.node, "templates/itemT5");
var nod = nx.gui.find(this.nodLst, "self_rank");
var rank_node = nx.gui.find(nod, "item5/rank");
// _data.rank > 0 ? _data.rank < 4 ? nx.gui.setActive( rank_node, "icon_" + _data.rank, true ) : nx.gui.setActive( rank_node, "icon_4" , true ) :
// nx.gui.setString( rank_node, "txt2", nx.text.getKey( "Rank0" ) );
this.dealSameCmp(rank_node, _data, nx.text.getKey("ArenaScore"));
nx.gui.setString(nod, "item5/info/score/txt", _data.score);
nx.gui.setString(nod, "item5/info/power", _data.worship);
this.nodLst.tmpItem = T;
var lst = _data.rank_list;
this.freshData(lst);
},
freshLadderUI: function freshLadderUI(_data) {
var T = nx.gui.find(this.node, "templates/itemTl");
var nod = nx.gui.find(this.nodLst, "self_rank");
var rank_node = nx.gui.find(nod, "iteml/rank");
this.dealSameCmp(rank_node, _data, nx.text.getKey("lab_rank_name_6"));
var role = RoleController.getInstance().getRoleVo();
nx.gui.setString(nod, "iteml/info/power", role.power);
nx.gui.setString(nod, "iteml/name", role.name);
nx.gui.setActive(this.nodLst, "self_rank/iteml", true);
this.nodLst.tmpItem = T;
var lst = _data.rank_list;
this.freshData(lst);
},
freshWeeklyChampionUI: function freshWeeklyChampionUI(_data) {
var T = nx.gui.find(this.node, "templates/itemTc");
var nod = nx.gui.find(this.nodLst, "self_rank");
var rank_node = nx.gui.find(nod, "itemc/rank");
this.dealSameCmp(rank_node, _data, nx.text.getKey("lab_rank_name_6"));
var role = RoleController.getInstance().getRoleVo();
nx.gui.setString(nod, "itemc/info/power/power", _data.power);
nx.gui.setString(nod, "itemc/info/score", _data.score);
nx.gui.setString(nod, "itemc/name", role.name);
nx.gui.setString(nod, "itemc/info/worship/num", _data.worship);
nx.gui.setActive(this.nodLst, "self_rank/itemc", true);
this.nodLst.tmpItem = T;
var lst = _data.rank_list;
this.freshData(lst);
},
// 切换
onTogMenu: function onTogMenu(_index) {
this.activeMenu(parseInt(_index) + 1);
},
freshData: function freshData(_data) {
nx.gui.setActive(this.nodLst, "empty", nx.dt.arrEmpty(_data));
this.nodLst.rebuild(_data);
},
freshOneWorship: function freshOneWorship(_data) {
var chd = nx.gui.find(this.nodLst, "scv/view/content").children;
// {"code":1,"msg":"","type":0,"rid":79,"srv_id":"dev_2","idx":7}
for (var i = 0; i < chd.length; i++) {
var item = chd[i];
var cmp = item.svItem;
if (cmp) {
if (cmp.mdata && cmp.mdata.rid == _data.rid) {
var data = nx.dt.objClone(cmp.mdata);
data.worship = !nx.dt.strEmpty(cmp.mdata.srv_id) && cmp.mdata.srv_id != "robot" ? cmp.mdata.worship + 1 : cmp.mdata.worship;
data.worship_status = cmp.mdata.worship_status + 1;
cmp.rebind(i, data);
}
}
}
},
freshInfo: function freshInfo() {
// 设置相关的 底部显示信息
var nods = nx.gui.find(this.nodLst, "self_rank/item");
var dfg = game.configs.arena_data.data_const.daily_reward_time;
var desc = "";
if (!this.defaultDesc) {
desc = this.curType == 2 ? dfg.desc : "";
} else {
desc = this.defaultDesc;
}
var model = ArenaController.getInstance().getModel();
var self_data = model.getMyLoopData();
nx.gui.setActive(this.nodLst, "self_rank/item/time", this.curType == 3);
nx.gui.setActive(this.nodLst, "self_rank/item5", this.curType == 1);
nx.gui.setString(nods, "desc", desc);
nx.gui.setString(nods, "time/txt", desc);
nx.gui.setActive(this.nodLst, "self_rank/item", this.curType == 2 || this.curType == 3);
nx.gui.setActive(this.nodLst, "self_rank/iteml", false);
nx.gui.setActive(this.nodLst, "nod_rank", false);
// 设置顶部 标题
nx.gui.setActive(this.nodLst, "empty", this.curType == 1);
nx.gui.setActive(this.nodLst, "self_rank/itemc", false);
// 设置顶部 标题
var nod = nx.gui.find(this.nodLst, "title");
nx.gui.setActive(nod, "nod_rank", false);
nx.gui.setActive(nod, "nod_reward/award", this.curType == 2);
nx.gui.setActive(nod, "nod_reward/award_s", this.curType == 3);
nx.gui.setActive(nod, "nod_reward", this.curType == 2 || this.curType == 3);
nx.gui.setCdTxt(nods, "time/txt", self_data.end_time - Math.floor(cc.sys.now() / 1000), function () {});
// nx.gui.setActive( this.nodLst, "self_rank", _bagCode == 1 );
},
// 重载:关闭前
onPreClosed: function onPreClosed() {
var nod = nx.gui.find(this.nodLst, "self_rank");
var tnod = nx.gui.find(this, "templates");
for (var i = 0; i < nod.children.length; i++) {
var cnod = nod.children[i];
var ttnod = tnod.children[i];
if (cnod) {
cnod.destroy();
}
if (ttnod) {
ttnod.destroy();
}
}
}
});
cc._RF.pop();