S2019.cs 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. using Common.Utility.CombatEvent;
  2. using Fort23.Core;
  3. using GameLogic.Combat.Buff;
  4. using GameLogic.Combat.CombatTool;
  5. using GameLogic.Player;
  6. namespace GameLogic.Combat.Skill
  7. {
  8. /// <summary>
  9. /// 金沙
  10. /// 前方功法命中目标时额外施加1层细尘。并将细尘的的品质提升为金沙,效果提升{0}%
  11. /// </summary>
  12. public class S2019 : SkillBasic
  13. {
  14. private int addValue;
  15. private long addDef;
  16. private float _time;
  17. private bool _isUpdate;
  18. protected override void ProActiveSkill()
  19. {
  20. CombatEventManager.Instance.AddEventListener(CombatEventType.HeroInjured, HeroInjured);
  21. }
  22. protected override void ProUseSkill()
  23. {
  24. }
  25. protected override void ProDispose()
  26. {
  27. CombatEventManager.Instance.RemoveEventListener(CombatEventType.HeroInjured, HeroInjured);
  28. }
  29. private void HeroInjured(IEventData iEventData)
  30. {
  31. HeroInjuredEventData heroInjuredEventData = iEventData as HeroInjuredEventData;
  32. if (heroInjuredEventData.HarmReturnInfo.source == CombatHeroEntity &&
  33. heroInjuredEventData.HarmReturnInfo.isHitHero)
  34. {
  35. SkillBasic skillBasic = heroInjuredEventData.HarmReturnInfo.triggerData.Source as SkillBasic;
  36. if (skillBasic != null && IsPassiveActivateSkill(skillBasic))
  37. {
  38. BuffInfo buffInfo = BuffInfo.GetBuffInfo(10131, 1);
  39. b_1013 b_1013 =
  40. heroInjuredEventData.HarmReturnInfo.target.combatHeroEntity.BuffControl.AddBuff(
  41. CombatHeroEntity,
  42. buffInfo) as b_1013;
  43. if (b_1013 != null)
  44. {
  45. b_1013.extraEffect = effectValue[0];
  46. }
  47. }
  48. }
  49. }
  50. }
  51. }