using CommonAI.Zone;
using CommonAI.Zone.Formula;
using CommonAI.Zone.Instance;
using XmdsCommon.Plugin;
using XmdsCommonServer.Plugin;
using XmdsCommonServer.Plugin.XmdsSkillTemplate.Skills;
namespace XmdsCommonSkill.Plugin.Buffs
{
///
///BUFF:点燃.
///
public class XmdsBuff_Burn : XmdsBuffBase
{
///
///填正值为扣血.
///
public int ChangeValue = 0;
public override int GetAbilityID()
{
return (int)XmdsCommon.Plugin.XmdsBuffProperties.XmdsBuffAbility.Burn;
}
public override void CopyTo(UnitBuff other)
{
var ret = other as XmdsBuff_Burn;
ret.ChangeValue = this.ChangeValue;
base.CopyTo(other);
}
protected override void OnBindTemplate(ref BuffTemplate buffTemplate)
{
//DOT类技能首帧无效.
buffTemplate.FirstTimeEnable = false;
base.OnBindTemplate(ref buffTemplate);
}
protected override int OnBuffHit(XmdsVirtual hitter, XmdsVirtual attacker,
CommonAI.Zone.Formula.AttackSource source,
ref XmdsVirtual.AtkResult result)
{
//敌方扣血
//hitter.AddHP(-54321, attacker.mUnit);
//自己加血
//attacker.AddHP(12345);
if (ChangeValue != 0)
{
//造成伤害.
return ChangeValue;
}
else
{
return base.OnBuffHit(hitter, attacker, source, ref result);
}
}
}
}