183 lines
7.2 KiB
JavaScript
183 lines
7.2 KiB
JavaScript
|
|
const BridgeWindow = require("bridge.window");
|
||
|
|
const ElitematchEvent = require( "elitematch_event" );
|
||
|
|
const HeroController = require("hero_controller");
|
||
|
|
const 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 () {
|
||
|
|
|
||
|
|
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( _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 );
|
||
|
|
|
||
|
|
let chd = nx.gui.find( this.nodSeasons, "lst/view/content" ).children;
|
||
|
|
for ( let i = chd.length; i > 0; i-- ) {
|
||
|
|
let 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 () {
|
||
|
|
|
||
|
|
|
||
|
|
},
|
||
|
|
|
||
|
|
freshChallengeLog: function( _cdata ){
|
||
|
|
|
||
|
|
let records = _cdata.arena_elite_log;
|
||
|
|
this.nodRecords.rebuild( records );
|
||
|
|
nx.gui.setActive( this.nodEmpty, "", nx.dt.arrEmpty( records ) );
|
||
|
|
|
||
|
|
},
|
||
|
|
|
||
|
|
onTogMenu : function( _idx ){
|
||
|
|
|
||
|
|
let type = _idx == 0 ? _idx : this.period;
|
||
|
|
let AC = this.mod;
|
||
|
|
if( AC ){
|
||
|
|
AC.sender24940( type );
|
||
|
|
}
|
||
|
|
},
|
||
|
|
|
||
|
|
freshPersonalInfo: function( _info ){
|
||
|
|
|
||
|
|
nx.gui.hideAllChildren( this.nodInfo );
|
||
|
|
if( !_info ){
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
|
||
|
|
let personalinfo = _info;
|
||
|
|
|
||
|
|
let nodp = nx.gui.find( this.nodInfo, personalinfo.period == 0 ? "self" : "total" );
|
||
|
|
|
||
|
|
let pnode = nx.gui.find( nodp, "self/mvp" );
|
||
|
|
let part = nx.gui.getComponent( pnode, "partner", "cmp.partner.com" );
|
||
|
|
|
||
|
|
let hero = HeroController.getInstance().getModel().getTopLevHeroInfoByBid( personalinfo.best_mvp );
|
||
|
|
if( part ){
|
||
|
|
part.setData( hero );
|
||
|
|
}
|
||
|
|
let rate = personalinfo.combat_win_count1 == 0 ? 0 : parseInt( personalinfo.combat_win_count1 * 100 / personalinfo.combat_all_count1 );
|
||
|
|
let 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) );
|
||
|
|
|
||
|
|
let defensenod = nx.gui.find( nodp, "self/maxdefense" );
|
||
|
|
|
||
|
|
let head = nx.gui.getComponent( defensenod, "head", "cmp.common.header" );
|
||
|
|
let form = nx.gui.find( nodp, "self/maxdefense/form" );
|
||
|
|
let mydata = {
|
||
|
|
face : personalinfo.face,
|
||
|
|
}
|
||
|
|
if( head ){
|
||
|
|
head.setData( mydata );
|
||
|
|
}
|
||
|
|
|
||
|
|
//PvpRankStrongDefense
|
||
|
|
let server = nx.dt.strNEmpty( personalinfo.srv_id ) ? personalinfo.srv_id.split( "_" ) : "";
|
||
|
|
let ddesc = "[" + nx.text.format( "Srever", server[1] ) + "]" + "\t\t" + personalinfo.name + "\t\t" + nx.text.format( "GuildLevel", personalinfo.lev ) ;
|
||
|
|
|
||
|
|
let 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 );
|
||
|
|
let chd = form.children;
|
||
|
|
for (let i = 0; i < chd.length; i++) {
|
||
|
|
let nod = chd[i];
|
||
|
|
let 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( _btn ){
|
||
|
|
|
||
|
|
let season = _btn.season;
|
||
|
|
this.mod.sender24940( season );
|
||
|
|
this.onTouchShow( false );
|
||
|
|
},
|
||
|
|
|
||
|
|
onTouchShow : function( _show ){
|
||
|
|
|
||
|
|
let show = !_show ? true : _show
|
||
|
|
let 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}
|
||
|
|
*/
|
||
|
|
|
||
|
|
});
|
||
|
|
|