using Common.Utility.CombatEvent; using Fort23.Core; using GameLogic.Combat.CombatTool; using GameLogic.Player; namespace GameLogic.Combat.Buff { /// /// 灼痛 敌人皮肤和静脉被火焰灼烧溃烂,使用功法时自身受到当前生命2%伤害 /// public class b_1010 : BuffBasic { protected override void ProInit() { CombatEventManager.Instance.AddEventListener(CombatEventType.AddUseGongFa, AddUseGongFa); } private void AddUseGongFa(IEventData eventData) { AddUseGongFaEventData data = (AddUseGongFaEventData)eventData; if (data.SkillBasic.CombatHeroEntity == combatHeroEntity) { float harmbl = buffCount * buffInf.BuffConfig.effectValue[0]; long harm = CombatCalculateTool.Instance.GetVlaueRatioForLong( source.CurrCombatHeroInfo.hp.Value, harmbl); CombatCalculateTool.Instance.Harm(source, combatHeroEntity, harm, AttType.Buff, _triggerData, WuXingType.Fire,HarmType.Buff); } } protected override void ProDormancyObj() { CombatEventManager.Instance.RemoveEventListener(CombatEventType.AddUseGongFa, AddUseGongFa); } } }