using CommonAI.Zone; using CommonAI.Zone.Helper; using CommonAI.Zone.Instance; using CommonLang; using System; using XmdsCommon.Plugin; using XmdsCommonServer.Plugin; using XmdsCommonServer.Plugin.XmdsSkillTemplate.DamageCalculator; using XmdsCommonServer.XLS.Data; using XmdsCommonSkill.Plugin.Buffs; namespace XmdsCommonSkill.Plugin.Skills.Remedy { /// /// 治疗, 三技能 3- 1 /// (回复自身血量,基于攻击力,系数低) /// public class Remedy_510310 : Remedy_510300 { private static readonly int ID = 510310; public override int SkillID { get { return ID; } } //回血系数 protected XmdsSkillValue valueSet2; protected override void OnInit(GameSkill info, XmdsVirtual unit, ref SkillTemplate template) { base.OnInit(info, unit, ref template); unit.RegistLaunchSkillOver(OnLaunchSkillOver, info); } private int OnLaunchSkillOver(GameSkill info, XmdsCommonServer.Plugin.XmdsVirtual attacker, CommonAI.Zone.Instance.InstanceUnit.SkillState state) { int addHP = CUtils.CastInt(attacker.MirrorProp.MaxAttack * XmdsUnitProp.PER * valueSet2.GetValue(info.TalentSkillLevel1)); attacker.AddHP(addHP); return 0; } protected override void OnInitConfig() { XmdsSkillData data = XmdsDataMgr.GetInstance().GetXmdsSkillData(ID); base.InitBaseConfig(data); InitData(data, out valueSet, XmdsSkillData.XmdsSkillDataKey.ValueSet); InitData(data, out valueSet2, XmdsSkillData.XmdsSkillDataKey.ValueSet2); } } }