b_1010.cs 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. using Common.Utility.CombatEvent;
  2. using Fort23.Core;
  3. using GameLogic.Combat.CombatTool;
  4. using GameLogic.Player;
  5. namespace GameLogic.Combat.Buff
  6. {
  7. /// <summary>
  8. /// 灼痛 敌人皮肤和静脉被火焰灼烧溃烂,使用功法时自身受到当前生命2%伤害
  9. /// </summary>
  10. public class b_1010 : BuffBasic
  11. {
  12. protected override void ProInit()
  13. {
  14. CombatEventManager.Instance.AddEventListener(CombatEventType.AddUseGongFa, AddUseGongFa);
  15. }
  16. private void AddUseGongFa(IEventData eventData)
  17. {
  18. AddUseGongFaEventData data = (AddUseGongFaEventData)eventData;
  19. if (data.SkillBasic.CombatHeroEntity == combatHeroEntity)
  20. {
  21. float harmbl = buffCount * buffInf.BuffConfig.effectValue[0];
  22. long harm = CombatCalculateTool.Instance.GetVlaueRatioForLong(
  23. source.CurrCombatHeroInfo.hp.Value, harmbl);
  24. CombatCalculateTool.Instance.Harm(source, combatHeroEntity, harm, AttType.Buff, _triggerData,
  25. WuXingType.Fire,HarmType.Buff);
  26. }
  27. }
  28. protected override void ProDormancyObj()
  29. {
  30. CombatEventManager.Instance.RemoveEventListener(CombatEventType.AddUseGongFa, AddUseGongFa);
  31. }
  32. }
  33. }