"use strict"; cc._RF.push(module, 'd968f/vnnRC/a9fnIwAEtXO', 'cmp.pvprank.achieve'); // Scripts/mod/pvp/rank/cmp/cmp.pvprank.achieve.js "use strict"; var BridgeWindow = require("bridge.window"); var ElitematchEvent = require("elitematch_event"); var HeroController = require("hero_controller"); var FxTogs = require("nx.fx.togs"); cc.Class({ "extends": BridgeWindow, properties: { nodToggle: { "default": null, type: FxTogs }, nodInfo: { "default": null, type: cc.Node }, nodSeasons: { "default": null, type: cc.Node } }, onLoad: function onLoad() { nx.gui.hideAllChildren(this.nodInfo); this.bindGEvent(ElitematchEvent.Elite_Personal_Info_Event, this.freshPersonalInfo.bind(this)); // this.bindGEvent( ArenaEvent.UpdateLoopChallengeTimesList, this.freshSelf.bind(this) ); // this.bindGEvent( ArenaEvent.UpdateLoopChallengeTimesList, this.showNode.bind(this)); // this.bindGEvent( ArenaEvent.UpdateArena_Number, this.updateRankListInfo.bind(this)); }, // 重载:参数打开 onOpenConfigs: function onOpenConfigs(_params) { this.period = _params.period; this.cfg = _params.cfg; this.arean = _params.arean; this.mod = _params.mod; nx.gui.gocChildren(this.nodSeasons, "lst/view/content", this.period); var chd = nx.gui.find(this.nodSeasons, "lst/view/content").children; for (var i = chd.length; i > 0; i--) { var nod = chd[i - 1]; nod.season = i; nx.gui.setString(nod, "sj", nx.text.format("PvpRMatchInfoDesc", i)); } this.nodToggle.posTog = this.onTogMenu.bind(this); this.nodToggle.togTo(0); this.onTogMenu(0); }, // 重载:关闭前 onPreClosed: function onPreClosed() {}, freshChallengeLog: function freshChallengeLog(_cdata) { var records = _cdata.arena_elite_log; this.nodRecords.rebuild(records); nx.gui.setActive(this.nodEmpty, "", nx.dt.arrEmpty(records)); }, onTogMenu: function onTogMenu(_idx) { var type = _idx == 0 ? _idx : this.period; var AC = this.mod; if (AC) { AC.sender24940(type); } }, freshPersonalInfo: function freshPersonalInfo(_info) { nx.gui.hideAllChildren(this.nodInfo); if (!_info) { return; } var personalinfo = _info; var nodp = nx.gui.find(this.nodInfo, personalinfo.period == 0 ? "self" : "total"); var pnode = nx.gui.find(nodp, "self/mvp"); var part = nx.gui.getComponent(pnode, "partner", "cmp.partner.com"); var hero = HeroController.getInstance().getModel().getTopLevHeroInfoByBid(personalinfo.best_mvp); if (part) { part.setData(hero); } var rate = personalinfo.combat_win_count1 == 0 ? 0 : parseInt(personalinfo.combat_win_count1 * 100 / personalinfo.combat_all_count1); var krate = personalinfo.combat_all_count2 == 0 ? 0 : parseInt(personalinfo.combat_win_count2 * 100 / personalinfo.combat_all_count2); // let showTxt = nx.gui.setString(nodp, "first/nowlev", nx.text.format("PvpRankNowLev", this.cfg[personalinfo.my_elite_lev].name)); nx.gui.setString(nodp, "first/nowscore", nx.text.format("PvpRankNowScore", personalinfo.my_score)); nx.gui.setString(nodp, "first/nowwin1", nx.text.format("PvpRankWinCount", personalinfo.combat_win_count1)); nx.gui.setString(nodp, "second/maxlev", nx.text.format("PvpRankLevHistory", this.cfg[personalinfo.max_lev].name)); nx.gui.setString(nodp, "second/maxscore", nx.text.format("PvpRankScoreHistory", personalinfo.max_score)); nx.gui.setString(nodp, "second/winraten", nx.text.format("PvpRankWinRate", rate)); nx.gui.setString(nodp, "third/arean", nx.text.format("PvpRankWinArean", this.arean[personalinfo.log_zone_id] ? this.arean[personalinfo.log_zone_id].name : "")); nx.gui.setString(nodp, "third/rank", nx.text.format("PvpRankNowRank", personalinfo.log_rank)); nx.gui.setString(nodp, "third/kingwin", nx.text.format("PvpRankKingCount", personalinfo.combat_win_count2)); nx.gui.setString(nodp, "fourth/maxharm", nx.text.format("PvpRankMaxHarm", personalinfo.max_dps)); nx.gui.setString(nodp, "fourth/maxwins", nx.text.format("PvpRankMaxWinn", personalinfo.winning_streak)); nx.gui.setString(nodp, "fourth/kingrate", nx.text.format("PvpRankKingWinRate", krate)); var defensenod = nx.gui.find(nodp, "self/maxdefense"); var head = nx.gui.getComponent(defensenod, "head", "cmp.common.header"); var form = nx.gui.find(nodp, "self/maxdefense/form"); var mydata = { face: personalinfo.face }; if (head) { head.setData(mydata); } //PvpRankStrongDefense var server = nx.dt.strNEmpty(personalinfo.srv_id) ? personalinfo.srv_id.split("_") : ""; var ddesc = "[" + nx.text.format("Srever", server[1]) + "]" + "\t\t" + personalinfo.name + "\t\t" + nx.text.format("GuildLevel", personalinfo.lev); var desc = nx.text.format("PvpRankStrongDefense", ddesc); desc = nx.dt.strNEmpty(personalinfo.srv_id) ? desc : nx.text.format("PvpRankStrongDefense", nx.text.getKey("BagEmpty")); nx.gui.setString(nodp, "self/maxdefense/desc", desc); if (nx.dt.arrNEmpty(personalinfo.power)) { nx.gui.gocChildren(form, "", personalinfo.power.length); var chd = form.children; for (var i = 0; i < chd.length; i++) { var nod = chd[i]; var power = personalinfo.power[i]; nx.gui.setString(nod, "team", nx.text.format("PvpRDenfenseT", i + 1)); nx.gui.setString(nod, "power", power.power); } } nx.gui.setActive(nodp, "self/maxdefense/head", nx.dt.strNEmpty(personalinfo.srv_id)); nx.gui.setActive(nodp, "self/maxdefense/form", nx.dt.strNEmpty(personalinfo.srv_id)); nx.gui.setActive(nodp, "self/mvp/partner", personalinfo.best_mvp > 0); nx.gui.setActive(nodp, "choice/lst", false); nx.gui.setString(nodp, "choice/bg/txt", nx.text.format("PvpRMatchInfoDesc", personalinfo.period)); nx.gui.setActive(nodp, "", true); }, onTouchSeason: function onTouchSeason(_btn) { var season = _btn.season; this.mod.sender24940(season); this.onTouchShow(false); }, onTouchShow: function onTouchShow(_show) { var show = !_show ? true : _show; var nodp = nx.gui.find(this.nodInfo, "total"); nx.gui.setActive(nodp, "choice/lst", show); } /**** * [19:38:38:265][recv] <<<[24940]:{"best_mvp":10503, * "my_score":1136,"my_elite_lev":3,"period":16, * "max_lev":3,"max_score":1203,"combat_win_count1":11, * "combat_all_count1":18,"combat_win_count2":0, * "combat_all_count2":0,"max_dps":726663,"winning_streak":7, * "rid":1876,"srv_id":"fx_1", * "name":"滅世風華","lev":90,"sex":0,"g_rid":41,"g_srv_id":"fx_1","gname":"阿斯顿发送到", * "power":[{"order":1,"power":311773}], * "face":26303,"score":2000,"elite_lev":1,"avatar_id":0,"face_update_time":0,"face_file":"","log_zone_id":1,"log_rank":2,"use_skin":0} */ }); cc._RF.pop();