伤害计算 需要统一
This commit is contained in:
@@ -186,15 +186,36 @@ export class SkillConComp extends CCComp {
|
||||
Object.values(this._timers).forEach(clearTimeout);
|
||||
}
|
||||
get_cd(cd:number,view:HeroViewComp){
|
||||
if(view.fac==FacSet.HERO){
|
||||
if(view.is_master){
|
||||
return cd*(100-this.FIGHTCON.hero_buff.ATK_CD+this.FIGHTCON.hero_debuff.DECD)/100
|
||||
}else{
|
||||
return cd*(100-this.FIGHTCON.friend_buff.ATK_CD+this.FIGHTCON.friend_debuff.DECD)/100
|
||||
let buff_key=null
|
||||
if(view.is_master) {buff_key="hero"}
|
||||
if(view.is_friend) {buff_key="friend"}
|
||||
if(view.is_boss) {buff_key="enemy"}
|
||||
if(view.is_kalami) {buff_key="enemy"}
|
||||
if(buff_key==null) return
|
||||
let debuff=this.FIGHTCON[buff_key+"_debuff"]
|
||||
let buff=this.FIGHTCON[buff_key+"_buff"]
|
||||
|
||||
// 汇总DEBUFF_DECD并处理count值
|
||||
let decd = 0;
|
||||
for (let i = view.DEBUFF_DECDS.length - 1; i >= 0; i--) {
|
||||
decd += view.DEBUFF_DECDS[i].value;
|
||||
view.DEBUFF_DECDS[i].count--;
|
||||
// 当count为0时移除该记录
|
||||
if (view.DEBUFF_DECDS[i].count <= 0) {
|
||||
view.DEBUFF_DECDS.splice(i, 1);
|
||||
}
|
||||
}else{
|
||||
return cd*(100-this.FIGHTCON.enemy_buff.ATK_CD+this.FIGHTCON.enemy_debuff.DECD)/100
|
||||
}
|
||||
let bcd=0
|
||||
for (let i = view.BUFF_CDS.length - 1; i >= 0; i--) {
|
||||
bcd += view.BUFF_CDS[i].value;
|
||||
view.BUFF_CDS[i].count--;
|
||||
if (view.BUFF_CDS[i].count <= 0) {
|
||||
view.BUFF_CDS.splice(i, 1);
|
||||
}
|
||||
}
|
||||
|
||||
return cd*(100-bcd-buff.ATK_CD+decd+debuff.DECD)/100
|
||||
|
||||
}
|
||||
get_count(count:number,view:HeroViewComp){
|
||||
if(view.fac==FacSet.HERO){
|
||||
|
||||
Reference in New Issue
Block a user