using Common.Utility.CombatEvent;
using Fort23.Core;
using GameLogic.Combat.Buff;
namespace GameLogic.Combat.Skill
{
///
/// 毒瘴领域
///前方功法击中目标时额外施加一层毒,对流血中的敌人再额外施加一层
///
public class S2013 : SkillBasic
{
protected override void ProActiveSkill()
{
CombatEventManager.Instance.AddEventListener(CombatEventType.HeroInjured, HeroInjured);
}
protected override void ProDispose()
{
CombatEventManager.Instance.RemoveEventListener(CombatEventType.HeroInjured, HeroInjured);
}
private void HeroInjured(IEventData iEventData)
{
HeroInjuredEventData heroInjuredEventData = iEventData as HeroInjuredEventData;
if (heroInjuredEventData.HarmReturnInfo.source == CombatHeroEntity &&
heroInjuredEventData.HarmReturnInfo.isHitHero)
{
SkillBasic skillBasic = heroInjuredEventData.HarmReturnInfo.triggerData.Source as SkillBasic;
if (skillBasic != null && IsPassiveActivateSkill(skillBasic))
{
CombatHeroEntity target =
heroInjuredEventData.HarmReturnInfo.target.combatHeroEntity as CombatHeroEntity;
b_1011 b1011 = target.BuffControl.GetBuffBasicForType();
int buffCount = 1;
if (b1011 != null)
{
buffCount += 1;
}
BuffInfo buffInfo = BuffInfo.GetBuffInfo(10031, buffCount);
target.BuffControl.AddBuff(CombatHeroEntity,
buffInfo);
}
}
}
protected override void ProUseSkill()
{
}
}
}