Magic_310160.cs 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. using CommonAI.Zone;
  2. using CommonAI.Zone.Helper;
  3. using CommonAI.Zone.Instance;
  4. using System;
  5. using System.Diagnostics;
  6. using XmdsCommon.Plugin;
  7. using XmdsCommonServer.Plugin;
  8. using XmdsCommonServer.Plugin.XmdsSkillTemplate.Skills;
  9. using XmdsCommonServer.XLS.Data;
  10. using XmdsCommonSkill.Plugin.Buffs;
  11. using static CommonAI.Zone.Instance.InstanceUnit;
  12. namespace XmdsCommonSkill.Plugin.Skills.Magic
  13. {
  14. /// <summary>
  15. /// T秒内,下一个破风三绝伤害整体增幅x%
  16. /// </summary>
  17. public class Magic_310160 : Magic_310150
  18. {
  19. /// 技能ID.
  20. private static readonly int ID = 310160;
  21. //1-6下N1毫秒秒次技能伤害提高N2
  22. protected XmdsSkillValue mValueSet4;
  23. //伤害提高有效时间
  24. private long mCurDmgAddValidTime;
  25. private long mNextDmgAddValidTime;
  26. public override int SkillID { get { return ID; } }
  27. protected override void OnSkillDamagePerEvent(BattleParams param)
  28. {
  29. base.OnSkillDamagePerEvent(param);
  30. if(this.mCurDmgAddValidTime > CommonLang.CUtils.localTimeMS)
  31. {
  32. param.SkillDamagePer += mValueSet4.GetValue(param.GameSkill.TalentSkillLevel3, 2);
  33. }
  34. }
  35. protected override int OnUnitLaunchSkillOver(GameSkill info, XmdsCommonServer.Plugin.XmdsVirtual launcher, CommonAI.Zone.Instance.InstanceUnit.SkillState state)
  36. {
  37. base.OnUnitLaunchSkillOver(info, launcher, state);
  38. if(state.ActionIndex <= 0)
  39. {
  40. this.mCurDmgAddValidTime = mNextDmgAddValidTime;
  41. this.mNextDmgAddValidTime = CommonLang.CUtils.localTimeMS + mValueSet4.GetValue(info.TalentSkillLevel3, 1);
  42. }
  43. return 0;
  44. }
  45. protected override void OnInitConfig()
  46. {
  47. XmdsSkillData data = XmdsDataMgr.GetInstance().GetXmdsSkillData(ID);
  48. InitData(data, out mValueSet1, XmdsSkillData.XmdsSkillDataKey.ValueSet);
  49. InitData(data, out mValueSet2, XmdsSkillData.XmdsSkillDataKey.ValueSet2);
  50. InitData(data, out mValueSet3, XmdsSkillData.XmdsSkillDataKey.ValueSet3);
  51. InitData(data, out mValueSet4, XmdsSkillData.XmdsSkillDataKey.ValueSet4);
  52. // 扩展配置
  53. InitData(data, out mValueSet8, XmdsSkillData.XmdsSkillDataKey.ValueSet8);
  54. }
  55. }
  56. }