114 lines
3.0 KiB
JavaScript
114 lines
3.0 KiB
JavaScript
|
|
"use strict";
|
||
|
|
cc._RF.push(module, '8a453XRVehEvKNusvDGC+6y', 'cmp.battle.harm');
|
||
|
|
// Scripts/mod/battle/cmp/cmp.battle.harm.js
|
||
|
|
|
||
|
|
"use strict";
|
||
|
|
|
||
|
|
var BriComp = require("bridge.component");
|
||
|
|
var BaseLayout = require("cmp.common.itemlayout");
|
||
|
|
var BattleEvent = require("battle_event");
|
||
|
|
var PathTool = require("pathtool");
|
||
|
|
var BattleController = require("battle_controller");
|
||
|
|
var RoleController = require("role_controller");
|
||
|
|
cc.Class({
|
||
|
|
"extends": BriComp,
|
||
|
|
properties: {
|
||
|
|
list: {
|
||
|
|
"default": null,
|
||
|
|
type: BaseLayout
|
||
|
|
}
|
||
|
|
},
|
||
|
|
// LIFE-CYCLE CALLBACKS:
|
||
|
|
onLoad: function onLoad() {
|
||
|
|
this._super();
|
||
|
|
this.ctrl = BattleController.getInstance();
|
||
|
|
var self = this;
|
||
|
|
this.bindGEvent(BattleEvent.BATTLE_HARM_DATA, self.setHarmData.bind(self));
|
||
|
|
},
|
||
|
|
start: function start() {},
|
||
|
|
onDisable: function onDisable() {
|
||
|
|
this.list.rebuild([]);
|
||
|
|
// 监听事件释放
|
||
|
|
this.unbindGEvents();
|
||
|
|
|
||
|
|
// 视图监听释放
|
||
|
|
this.vunbind();
|
||
|
|
},
|
||
|
|
onDestroy: function onDestroy() {},
|
||
|
|
setHarmData: function setHarmData(data) {
|
||
|
|
if (data && data.hurt_statistics) {
|
||
|
|
this.data = data;
|
||
|
|
this.left_hero_data = {};
|
||
|
|
// var right_hero_data = {};
|
||
|
|
for (var k in data.hurt_statistics) {
|
||
|
|
var v = data.hurt_statistics[k];
|
||
|
|
if (v.type == 1) {
|
||
|
|
this.left_hero_data = v.partner_hurts;
|
||
|
|
}
|
||
|
|
// else if (v.type == 2) {
|
||
|
|
// right_hero_data = v.partner_hurts;
|
||
|
|
// }
|
||
|
|
}
|
||
|
|
|
||
|
|
var left_max_harm = 0;
|
||
|
|
var left_max_cure = 0;
|
||
|
|
for (var k in this.left_hero_data) {
|
||
|
|
var v = this.left_hero_data[k];
|
||
|
|
if (v.dps > left_max_harm) {
|
||
|
|
left_max_harm = v.dps;
|
||
|
|
}
|
||
|
|
if (v.cure > left_max_cure) {
|
||
|
|
left_max_cure = v.cure;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
//英雄列表
|
||
|
|
var list = [];
|
||
|
|
var index = 0;
|
||
|
|
for (var i in this.left_hero_data) {
|
||
|
|
var _v = {};
|
||
|
|
_v.data = this.left_hero_data[i];
|
||
|
|
_v.left_max_harm = left_max_harm;
|
||
|
|
_v.left_max_cure = left_max_cure;
|
||
|
|
_v.index = 1;
|
||
|
|
_v.idx = index;
|
||
|
|
index++;
|
||
|
|
list.push(_v);
|
||
|
|
}
|
||
|
|
this.list.rebuild(list);
|
||
|
|
}
|
||
|
|
},
|
||
|
|
refreshData: function refreshData(index) {
|
||
|
|
if (nx.dt.arrEmpty(this.left_hero_data)) {
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
var left_max_harm = 0;
|
||
|
|
var left_max_cure = 0;
|
||
|
|
for (var k in this.left_hero_data) {
|
||
|
|
var v = this.left_hero_data[k];
|
||
|
|
if (v.dps > left_max_harm) {
|
||
|
|
left_max_harm = v.dps;
|
||
|
|
}
|
||
|
|
if (v.cure > left_max_cure) {
|
||
|
|
left_max_cure = v.cure;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
var list = [];
|
||
|
|
for (var i in this.left_hero_data) {
|
||
|
|
var _v2 = {};
|
||
|
|
_v2.data = this.left_hero_data[i];
|
||
|
|
_v2.index = index; //1 伤害 2 治疗
|
||
|
|
_v2.left_max_harm = left_max_harm;
|
||
|
|
_v2.left_max_cure = left_max_cure;
|
||
|
|
list.push(_v2);
|
||
|
|
}
|
||
|
|
this.list.rebuild(list);
|
||
|
|
},
|
||
|
|
changeSelectedTab: function changeSelectedTab(index) {
|
||
|
|
this.refreshData(index);
|
||
|
|
gcore.GlobalEvent.fire(BattleEvent.BATTLE_HARM_MVP, index);
|
||
|
|
}
|
||
|
|
// update (dt) {},
|
||
|
|
});
|
||
|
|
|
||
|
|
cc._RF.pop();
|