XmdsBattleFunctionEvent_10015.cs 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. using CommonAI.Zone;
  2. using System.Collections.Generic;
  3. using XmdsCommon.Plugin;
  4. using XmdsCommonServer.Plugin;
  5. using XmdsCommonServer.Plugin.XmdsSkillTemplate.DamageCalculator;
  6. using XmdsCommonServer.XLS.Data;
  7. using XmdsCommonSkill.Plugin.Buffs;
  8. namespace XmdsCommonSkill.Plugin.FunctionEvent
  9. {
  10. /// <summary>
  11. /// 精英
  12. /// </summary>
  13. public class XmdsBattleFunctionEvent_10015 : XmdsBattleFunctionEventBase
  14. {
  15. public static readonly int EventID = 10015;
  16. private int BuffValue_1 = 0; //
  17. private int BuffValue_2 = 0; //
  18. private int Buff_LifeTime = 0; // buff持续时间.
  19. public override int GetEventID() { return EventID; }
  20. protected override bool OnInit()
  21. {
  22. BuffConfig config = base.GetBuffConfig();
  23. BuffValue_1 = System.Int32.Parse(config.ValueSet1);
  24. BuffValue_2 = System.Int32.Parse(config.ValueSet2);
  25. Buff_LifeTime = System.Int32.Parse(config.ValueSet3);
  26. List<XmdsBuffProperties.XmdsBuffAbility> abilityList = new List<XmdsBuffProperties.XmdsBuffAbility>();
  27. abilityList.Add(XmdsBuffProperties.XmdsBuffAbility.PropChange);
  28. abilityList.Add(XmdsBuffProperties.XmdsBuffAbility.PropChange);
  29. return XmdsBuffFactory.GetInstance().XmdsBuffPackTest(base.mBuff_ID, abilityList);
  30. }
  31. protected override void OnTriggerEvent(XmdsVirtual target, XmdsVirtual sender)
  32. {
  33. XmdsBuffPack pack = XmdsBuffFactory.GetInstance().GetXmdsBuffPack(base.mBuff_ID);
  34. var buff = (XmdsBuff_PropChange)pack.GetXmdsBuff(0);
  35. buff.CurentChangeType = XmdsVirtual.UnitAttributeType.MaxHP;
  36. buff.CurrentValue = BuffValue_1;
  37. buff.IsPercent = true;
  38. var buff1 = (XmdsBuff_PropChange)pack.GetXmdsBuff(1);
  39. buff1.CurentChangeType = XmdsVirtual.UnitAttributeType.Attack;
  40. buff1.CurrentValue = BuffValue_2;
  41. buff1.IsPercent = true;
  42. BuffTemplate bt = pack.mBuffTemplate;
  43. bt.IsHarmful = false;
  44. bt.LifeTimeMS = Buff_LifeTime;
  45. pack.BindTemplateAndDispose();
  46. target.mUnit.AddBuff(bt, sender.mUnit);
  47. }
  48. }
  49. }