Files
fc/dev/project/assets/Scripts/mod/pvp/crosschampion/cmp/cmp.cchampion.harm.detail.js
T
2026-05-23 22:10:14 +08:00

168 lines
8.0 KiB
JavaScript

const BridgeWindow = require("bridge.window");
const RoleController = require( "role_controller" );
const HeroController = require( "hero_controller" );
cc.Class({
extends: BridgeWindow,
properties: {
nodOther: { default: null, type : cc.Node },
nodLeftName: {default: null, type : cc.Node},
nodRightName: {default: null, type : cc.Node},
nodSelf: { default: null, type : cc.Node },
nodSelfInfo: { default: null, type : cc.Node },
nodOtherInfo: { default: null, type : cc.Node },
},
onOpenConfigs( _params ) {
if( !_params ){
return;
}
// console.log( "收到的數據顯示信息" + JSON.stringify( _params ) );
// {"id":643,"target":2,"bet":60,"get_bet":90,"step":64,"round":3,"group":8,"a_bet":0,"a_rid":19,"a_srv_id":"","a_name":"幻柏雲凡","a_lev":65,"a_face":26302,"a_face_update_time":0,"a_face_file":"","a_avatar_id":0,"a_sex":0,"a_power":2851315,"a_formation_type":6,"a_formation_lev":1,
// "a_plist":[
// {"pos":5,"bid":10508,"lev":205,"quality":0,"star":9,"break_lev":6,"hurt":818734,"behurt":934066,"curt":0,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}]},
// {"pos":4,"bid":10505,"lev":280,"quality":0,"star":11,"break_lev":6,"hurt":672452,"behurt":1101230,"curt":0,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}]},
// {"pos":3,"bid":10503,"lev":280,"quality":0,"star":11,"break_lev":6,"hurt":373925,"behurt":925287,"curt":0,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}]},
// {"pos":2,"bid":10509,"lev":205,"quality":0,"star":9,"break_lev":6,"hurt":348913,"behurt":1291512,"curt":0,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}]},
// {"pos":1,"bid":10504,"lev":277,"quality":0,"star":11,"break_lev":6,"hurt":206954,"behurt":1249977,"curt":0,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}]}],
// "b_bet":60,"b_rid":6,"b_srv_id":"","b_name":"從蓉曉綠","b_lev":61,"b_face":28408,"b_face_update_time":0,"b_face_file":"","b_avatar_id":0,"b_sex":1,"b_power":2942627,"b_formation_type":6,"b_formation_lev":1,
// "b_plist":[
// {"pos":5,"bid":40507,"lev":279,"quality":0,"star":11,"break_lev":6,"hurt":139855,"behurt":295176,"curt":1236854,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}]},
// {"pos":4,"bid":40504,"lev":280,"quality":0,"star":11,"break_lev":6,"hurt":1672413,"behurt":354593,"curt":0,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}]},
// {"pos":3,"bid":40503,"lev":280,"quality":0,"star":11,"break_lev":6,"hurt":2247430,"behurt":382678,"curt":0,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}]},
// {"pos":2,"bid":40501,"lev":205,"quality":0,"star":9,"break_lev":6,"hurt":1128951,"behurt":325682,"curt":0,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}]},
// {"pos":1,"bid":40505,"lev":205,"quality":0,"star":9,"break_lev":6,"hurt":303559,"behurt":1072713,"curt":0,"ext_data":[{"key":5,"val":0},{"key":11,"val":0}]}],
// "ret":2,"replay_id":11263,"a_sprite_lev":0,"a_sprites":[],"b_sprite_lev":0,"b_sprites":[]}
let harms = 0;
let cures = 0;
let demager = 0;
for (let i = 0; i < _params.a_plist.length; i++) {
let part = _params.a_plist[i];
harms += part.hurt;
cures += part.curt;
demager += part.behurt;
}
nx.gui.gocChildren( this.nodSelf, "", _params.a_plist.length );
nx.gui.gocChildren( this.nodOther, "", _params.b_plist.length );
// console.log( "總傷害" + harms + "縂被傷" + demager + "縂治療" + cures );
nx.gui.setString( this.nodLeftName, "", _params.a_name );
nx.gui.setString( this.nodRightName, "", _params.b_name );
let dealShowParts = function( _info, _nod ){
let chd = _nod;
let alst = _info;
for (let i = 0; i < chd.length; i++) {
let info = alst[i];
let nod = chd[i];
let base = nx.gui.getComponent( nod, "icon", "cmp.item.base" );
if( base ){
base.setData( info.bid );
}
let harm_prog = nx.gui.getComponent( nod, "dam/prog", cc.ProgressBar );
if( harm_prog && info.hurt > 0 ){
harm_prog.progress = parseFloat( info.hurt / harms);
}
nx.gui.setString( nod, "dam/rate", info.hurt );
let demage_prog = nx.gui.getComponent( nod, "harm/prog", cc.ProgressBar );
if( demage_prog && info.behurt > 0 ){
demage_prog.progress = parseFloat( info.behurt / demager );
}
nx.gui.setString( nod, "harm/rate", info.behurt );
let cure_prog = nx.gui.getComponent( nod, "becure/prog", cc.ProgressBar );
if( cure_prog && info.curt > 0 ){
cure_prog.progress = parseFloat( info.curt / cures );
}
nx.gui.setString( nod, "becure/rate", info.curt );
}
}
let alst = _params.a_plist;
let blst = _params.b_plist;
let chd = this.nodSelf.children;
let chdr = this.nodOther.children;
dealShowParts( alst, chd );
dealShowParts( blst, chdr );
// let role = RoleController.getInstance().getRoleVo();
// nx.gui.setString( this.nodSelf, "name", role.name );
// nx.gui.setString( this.nodOther, "name", _params.demage.tar_name || _params.demage.def_name );
// let hurt = _params.demage.hurt_statistics;
// let self = {};
// let other = {};
// for (let i = 0; i < hurt.length; i++) {
// let item = hurt[i];
// if( item.type == 1 ){
// self = item
// }else{
// other = item;
// }
// }
// let self_demages = self.partner_hurts;
// let other_demages = other.partner_hurts;
// nx.gui.gocChildren( this.nodOtherInfo, "", other_demages.length );
// let chd = this.nodOtherInfo.children;
// for (let j = 0; j < chd.length; j++) {
// let item = chd[j];
// let d = other_demages[j];
// if( item ){
// let cmp = nx.gui.getComponent( item, "icon", "cmp.item.base" );
// nx.gui.setString( item, "demage/rate", _params.demage.result > 1 ? d.dps : d.be_hurt );
// nx.gui.getComponent( item, "demage/prog", cc.ProgressBar ).progress = _params.demage.result > 1 ? ( d.dps / 350 ) < 1 ? ( d.dps / 350 ) : 1 : ( d.be_hurt / 350 ) < 1 ? ( d.be_hurt / 350 ) : 1;
// nx.gui.setString( item, "cure/rate", d.cure );
// nx.gui.getComponent( item, "cure/prog", cc.ProgressBar ).progress = ( d.cure / 350 ) < 1 ? ( d.cure / 350 ) : 1;
// if( cmp ){
// cmp.setData( d.bid );
// }
// }
// }
// nx.gui.gocChildren( this.nodSelfInfo, "", self_demages.length );
// let chds = this.nodSelfInfo.children;
// for (let j = 0; j < chds.length; j++) {
// let item = chds[j];
// let d = self_demages[j];
// if( item ){
// nx.gui.setString( item, "demage/rate", _params.demage.result == 1 ? d.dps : d.be_hurt );
// nx.gui.getComponent( item, "demage/prog", cc.ProgressBar ).progress = _params.demage.result == 1 ? ( d.dps / 350 ) < 1 ? ( d.dps / 350 ) : 1 : ( d.be_hurt / 350 ) < 1 ? ( d.be_hurt / 350 ) : 1;
// nx.gui.setString( item, "cure/rate", d.cure );
// nx.gui.getComponent( item, "cure/prog", cc.ProgressBar ).progress = ( d.cure / 350 ) < 1 ? ( d.cure / 350 ) : 1;
// let cmp = nx.gui.getComponent( item, "icon", "cmp.item.base" );
// if( cmp ){
// cmp.setData( d.bid );
// }
// }
// }
},
// 重载:关闭前
onPreClosed: function () {
},
});