Files
fc/dev/project/assets/Scripts/mod/pvp/rank/cmp/cmp.pvprank.battleinfoitem.js
T

142 lines
6.1 KiB
JavaScript
Raw Normal View History

2026-05-23 22:10:14 +08:00
const SvcItem = require( "nx.fx.sv.expand.item" );
const { data2Icon } = require( "bridge.utils.item" );
const BattleController = require( "battle_controller" );
cc.Class({
extends: SvcItem,
properties: {
nodData: { type: cc.Node, default : null },
},
// 数据重置
rebind: function( _idx, _data, _key ) {
this.index = _idx;
this.mdata = _data;
this.key = _key || "";
this.setData( _data );
},
/**
* {"type":1,"id":2,"arena_replay_infos":[
* {"order":1,"id":762,"round":1,"ret":1,"time":1713163257,"rid":2079,"srv_id":"fx_1","a_power":53092,
* "a_formation_type":1,"a_order":1,"a_end_hp":100,"b_rid":2076,"b_srv_id":"fx_1","b_power":918,"b_formation_type":1,
* "b_order":1,"b_end_hp":0,
* "a_plist":[
* {"pos":9,"bid":50505,"lev":80,"star":5,"ext":[{"key":5,"val":0},{"key":11,"val":0}]},
* {"pos":7,"bid":20502,"lev":90,"star":5,"ext":[{"key":5,"val":0},{"key":11,"val":0}]},
* {"pos":6,"bid":40505,"lev":1,"star":5,"ext":[{"key":5,"val":0},{"key":11,"val":0}]},
* {"pos":4,"bid":40504,"lev":60,"star":5,"ext":[{"key":5,"val":0},{"key":11,"val":0}]},
* {"pos":2,"bid":10507,"lev":48,"star":5,"ext":[{"key":5,"val":0},{"key":11,"val":0}]}],
* "b_plist":[
* {"pos":2,"bid":30404,"lev":1,"star":4,"ext":[{"key":5,"val":0},{"key":11,"val":0}]}],
* "hurt_statistics":[
* {"type":2,"partner_hurts":[
* {"rid":2076,"srvid":"fx_1","id":1,"bid":30404,"star":4,"lev":1,"camp_type":3,"dps":0,"cure":0,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}],"be_hurt":3861}]},
* {"type":1,"partner_hurts":[{"rid":2079,"srvid":"fx_1","id":7,"bid":10507,"star":5,"lev":48,"camp_type":1,"dps":0,"cure":0,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}],
* "be_hurt":0},{"rid":2079,"srvid":"fx_1","id":4,"bid":40504,"star":5,"lev":60,"camp_type":4,"dps":0,"cure":0,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}],"be_hurt":0},
* {"rid":2079,"srvid":"fx_1","id":123,"bid":40505,"star":5,"lev":1,"camp_type":4,"dps":0,"cure":0,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}],"be_hurt":0},
* {"rid":2079,"srvid":"fx_1","id":6,"bid":20502,"star":5,"lev":90,"camp_type":2,"dps":3861,"cure":0,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}],"be_hurt":0},
* {"rid":2079,"srvid":"fx_1","id":3,"bid":50505,"star":5,"lev":80,"camp_type":5,"dps":0,"cure":0,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}],"be_hurt":0}]}],
* "a_sprite_lev":1,"a_sprites":[{"pos":1,"item_bid":0}],"b_sprite_lev":1,"b_sprites":[{"pos":1,"item_bid":0}],"a_add_power":0,"b_add_power":0}]}***
*
*
*/
setData: function( _data ){
// console.log( "當前的相關顯示" + JSON.stringify( _data ) );
let allround = game.configs.combat_type_data.data_fight_list[ _data.combat_type ].max_action_count;
let date = nx.bridge.time.toLocalString( this.mdata.time );
nx.gui.setString( this.nodData, "", date );
let lchd = nx.gui.find( this, "posl" ).children;
let rchd = nx.gui.find( this, "posr" ).children;
let slchd = nx.gui.find( this, "wingsl" ).children;
let srchd = nx.gui.find( this, "wingsr" ).children;
let a_plist = this.mdata.a_plist;
let b_plist = this.mdata.b_plist;
let a_sprites = this.mdata.a_sprites;
let b_sprites = this.mdata.b_sprites;
for (let p = 0; p < a_plist.length; p++) {
let info = a_plist[p];
let rinfo = b_plist[p];
let asprite = a_sprites[p];
let bsprite = b_sprites[p];
if( asprite && asprite.item_bid > 0 ){
let wlnod = slchd[ asprite.pos -1 ];
let cmp = nx.gui.getComponent( wlnod, "", "cmp.item.base" );
if( cmp ){
cmp.setData( asprite.item_bid );
}
}
if( bsprite && bsprite.item_bid > 0 ){
let wrnod = srchd[ bsprite.pos -1 ];
let cmp = nx.gui.getComponent( wrnod, "", "cmp.item.base" );
if( cmp ){
cmp.setData( bsprite.item_bid );
}
}
if( rinfo ){
let rnod = rchd[rinfo.pos-1];
let rcmp = nx.gui.getComponent( rnod, "", "cmp.item.base" );
// let base =
let rinfobase = data2Icon( rinfo.bid );
rinfobase.stars = rinfo.star;
if( rcmp ){
rcmp.setData( rinfobase );
}
nx.gui.setString( rnod, "lev", nx.text.format( "LvNumber", info.lev ) );
}
let linfobase = data2Icon( info.bid );
let nod = lchd[info.pos-1];
let cmp = nx.gui.getComponent( nod, "", "cmp.item.base" );
// let base =
linfobase.stars = info.star;
if( cmp ){
cmp.setData( linfobase );
}
nx.gui.setString( nod, "lev", nx.text.format( "LvNumber", info.lev ) );
}
nx.gui.setActive( this, "lfb/win", this.mdata.ret == 1 );
nx.gui.setActive( this, "rbg/win", this.mdata.ret == 2 );
nx.gui.setString( this, "lfb/team", nx.text.format( "PvpRDenfenseT", this.index + 1 ) );
nx.gui.setString( this, "lfb/power", this.mdata.a_power );
nx.gui.setString( this, "rbg/team", nx.text.format( "PvpRDenfenseT", this.index + 1 ) );
nx.gui.setString( this, "rbg/power", this.mdata.b_power );
nx.gui.setString( this, "round", nx.text.format( "msg_vedio_item_panel_tip3", _data.round, allround ) );
},
onTouchSeeVideo: function(){
BattleController.getInstance().csRecordBattle( this.mdata.id );
nx.bridge.closePanel( "WndEliteRankRecordsInfo" );
nx.bridge.closePanel( "WndEliteRankRecords" );
},
onTouchOutPut: function(){
let result = {
tar_name : "",
hurt_statistics : this.mdata.hurt_statistics
}
nx.bridge.createPanel( "WndArenaLoopCDetail", {
demage: result
} )
},
});