b_1017.cs 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. using Common.Utility.CombatEvent;
  2. using Fort23.Core;
  3. using GameLogic.Combat.CombatTool;
  4. using GameLogic.Player;
  5. using UnityEngine;
  6. namespace GameLogic.Combat.Buff
  7. {
  8. /// <summary>
  9. /// 鼠疫
  10. /// 敌人受到每秒受到{0}*层数的伤害,持续期间攻击力降低{1}*层数
  11. /// </summary>
  12. public class b_1017 : BuffBasic
  13. {
  14. /// <summary>
  15. /// 添加的攻击力
  16. /// </summary>
  17. private long addAtt;
  18. protected override void ProInit()
  19. {
  20. _jianGe = 1;
  21. }
  22. protected override void UpdateJumping()
  23. {
  24. float harmbl = buffCount * buffInf.BuffConfig.effectValue[0];
  25. long harm = CombatCalculateTool.Instance.GetVlaueRatioForLong(
  26. source.CurrCombatHeroInfo.attack.Value, harmbl);
  27. CombatCalculateTool.Instance.Harm(source, combatHeroEntity, harm, AttType.Buff, _triggerData,
  28. WuXingType.Null, null, HarmType.Buff);
  29. }
  30. protected override void ProUpdateEffect()
  31. {
  32. source.CurrCombatHeroInfo.attack += addAtt;
  33. addAtt = 0;
  34. float addAttbl = buffCount * buffInf.BuffConfig.effectValue[1];
  35. addAtt = CombatCalculateTool.Instance.GetVlaueRatioForLong(source.CurrCombatHeroInfo.attack.Value,
  36. addAttbl);
  37. source.CurrCombatHeroInfo.attack -= addAtt;
  38. }
  39. protected override void ProDormancyObj()
  40. {
  41. source.CurrCombatHeroInfo.attack += addAtt;
  42. addAtt = 0;
  43. }
  44. }
  45. }