This commit is contained in:
walkpan
2025-10-16 23:40:12 +08:00
parent d486d87676
commit 559ddfb653
8 changed files with 267 additions and 562 deletions

View File

@@ -8,7 +8,7 @@ import { BoxSet, FacSet } from "../common/config/BoxSet";
import { HeroInfo, HeroPos, HType } from "../common/config/heroSet";
import { BattleMoveComp } from "../common/ecs/position/BattleMoveComp";
import { GameEvent } from "../common/config/GameEvent";
import { BuffAttr, getBuffNum, SkillSet, SType } from "../common/config/SkillSet";
import { Attrs, getAttrs } from "../common/config/SkillSet";
/** 角色实体 */
@ecs.register(`Hero`)
@@ -65,38 +65,23 @@ export class Hero extends ecs.Entity {
let hero= HeroInfo[uuid] // 共用英雄数据
hv.scale = 1;
hv.is_master=true;
hv.lv=HeroInfo[uuid].lv?HeroInfo[uuid].lv:1
hv.lv=hero.lv?hero.lv:1
hv.fac = FacSet.HERO;
hv.type = hero.type;
hv.box_group = BoxSet.HERO;
hv.hero_uuid= uuid;
hv.hero_name= hero.name;
hv.hp=hv.hp_max=hv.hp_base=HeroInfo[uuid].hp;
hv.mp=hv.mp_max=hv.mp_base=HeroInfo[uuid].mp;
hv.Attrs=getBuffNum()
hv.Attrs[BuffAttr.SPEED]=hv.speed = hero.speed;
hv.Attrs[BuffAttr.DIS]=hv.dis=hero.dis;
hv.Attrs[BuffAttr.ATK_CD]=hv.cd=hero.cd
hv.Attrs[BuffAttr.AP]=hv.ap=HeroInfo[uuid].ap;
hv.Attrs[BuffAttr.DEF]=HeroInfo[uuid].def;
hero.buff.forEach((buff:any)=>{
hv.apply_buff(buff.type,buff.value)
})
for(let i=0;i<hero.skills.length;i++){
if(SkillSet[hero.skills[i]].SType==SType.buff){
let buffs=SkillSet[hero.skills[i]].buffs
buffs.forEach((buff:any)=>{
hv.apply_buff(buff.buff, buff.buV)
})
continue
}else{
hv.skills.push({
cd:0,
uuid:hero.skills[i],
cd_max:i==0?hero.cd:SkillSet[hero.skills[i]].cd
})
}
}
hv.base_ap=hero.ap
hv.base_map=hero.mp
hv.base_def=hero.def
hv.hp=hv.base_hp=hero.hp
hv.mp=hv.base_mp=hero.mp
hv.Attrs=getAttrs()
hv.Attrs[Attrs.HP_MAX]=hv.base_hp
hv.Attrs[Attrs.MP_MAX]=hv.base_mp
hv.Attrs[Attrs.DEF]=hv.base_def
hv.Attrs[Attrs.AP]=hv.base_ap
hv.Attrs[Attrs.MAP]=hv.base_map
return hv
}
}