修复局内buff bug

This commit is contained in:
2024-12-09 09:25:35 +08:00
parent 6d518794f4
commit b236c1a4f9
4 changed files with 18 additions and 11 deletions

View File

@@ -496,27 +496,33 @@ export class HeroViewComp extends CCComp {
shoot_enemy(sk:number,y:number=0,x:number=0){
// console.log("mon shoot_enemy");
let skill = ecs.getEntity<Skill>(Skill);
let ap = this.ap;
let AP = this.ap+smc.vmdata.mission.ap; //攻击力需要加上局内buff
if(this.box_group == BoxSet.MONSTER){
AP = this.ap+smc.vmdata.mission.map
}
let {pos,t_pos}=this.get_enemy_pos()
pos.y=pos.y + y
pos.x=pos.x + x
let is_crit=this.check_crit()
skill.load(pos,this.box_group,this.node,sk,ap,t_pos,is_crit,this.crit_add);
skill.load(pos,this.box_group,this.node,sk,AP,t_pos,is_crit,this.crit_add);
console.log(this.scale+this.hero_name+"使用技能:"+sk);
}
to_add_buff(hero:any,sk:number){
let skill = ecs.getEntity<Skill>(Skill);
let ap = smc.skills[sk].ap+this.ap;
let AP = smc.skills[sk].ap+this.ap+smc.vmdata.mission.ap; //攻击力需要加上局内buff
if(this.box_group == BoxSet.MONSTER){
AP = smc.skills[sk].ap+this.ap+smc.vmdata.mission.map;
}
let {pos,t_pos}=this.get_hero_pos(hero)
console.log("to_add_buff:"+hero.hero_name+" "+sk);
let is_crit=this.check_crit()
skill.load(pos,this.box_group,this.node,sk,ap,t_pos,is_crit,this.crit_add);
skill.load(pos,this.box_group,this.node,sk,AP,t_pos,is_crit,this.crit_add);
if(smc.skills[sk].hp > 0){ //buff加血
let increase_hp=Math.floor(smc.skills[sk].hp*this.ap)
let increase_hp=Math.floor(smc.skills[sk].hp*AP)
hero.add_hp(increase_hp)
}
if(smc.skills[sk].ap > 0){ //buff加攻击
let increase_atk=Math.floor(smc.skills[sk].ap*this.ap)
let increase_atk=Math.floor(smc.skills[sk].ap*AP)
hero.add_ap(increase_atk,smc.skills[sk].bsd)
}