Warrior_110410.cs 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using CommonAI.Data;
  2. using CommonAI.Zone;
  3. using CommonAI.Zone.Formula;
  4. using CommonAI.Zone.Helper;
  5. using CommonAI.Zone.Instance;
  6. using CommonLang;
  7. using XmdsCommon.Plugin;
  8. using XmdsCommonServer.Plugin;
  9. using XmdsCommonServer.Plugin.XmdsSkillTemplate.DamageCalculator;
  10. using XmdsCommonServer.XLS.Data;
  11. namespace XmdsCommonSkill.Plugin.Skills.Warrior
  12. {
  13. /// <summary>
  14. /// 4技能 4 - 1(攻击力加成)
  15. /// </summary>
  16. public class Warrior_110410 : Warrior_110400
  17. {
  18. private static readonly int ID = 110410;
  19. // 伤害倍数.
  20. protected XmdsSkillValue mValueSet2;
  21. public override int SkillID { get { return ID; } }
  22. protected override bool OnSkillFinalDamageModifyEvent(BattleParams param)
  23. {
  24. base.OnSkillFinalDamageModifyEvent(param);
  25. // 相当于把系数转换成攻击值去算攻击力
  26. float damageBase = param.Attacker.MirrorProp.GetFinalAttack(param.Hitter.mUnit.IsMonster) * XmdsUnitProp.PER* mValueSet2.GetValue(param.GameSkill.TalentSkillLevel1);
  27. param.HitDamge += XmdsDamageCalculator.GetDamage((int)damageBase, param.Attacker, param.Hitter, param.Source);
  28. return true;
  29. }
  30. protected override void OnInitConfig()
  31. {
  32. XmdsSkillData data = XmdsDataMgr.GetInstance().GetXmdsSkillData(ID);
  33. InitData(data, out mDamageReduce, XmdsSkillData.XmdsSkillDataKey.DmgRate);
  34. InitData(data, out mValueSet1, XmdsSkillData.XmdsSkillDataKey.ValueSet);
  35. InitData(data, out mValueSet2, XmdsSkillData.XmdsSkillDataKey.ValueSet2);
  36. // 扩展配置
  37. InitData(data, out mValueSet5, XmdsSkillData.XmdsSkillDataKey.ValueSet5);
  38. InitData(data, out mValueSet6, XmdsSkillData.XmdsSkillDataKey.ValueSet6);
  39. InitData(data, out mValueSet8, XmdsSkillData.XmdsSkillDataKey.ValueSet8);
  40. }
  41. }
  42. }