| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 | using Common.Utility.CombatEvent;using Fort23.Core;using GameLogic.Combat.Buff;using GameLogic.Combat.CombatTool;namespace GameLogic.Combat.Skill{    /// <summary>    /// 异常转移    ///对目标造成的异常状态有20%概率转移到下一个目标,不会来回转移    /// </summary>    public class S2015 : SkillBasic    {        protected override void ProActiveSkill()        {            CombatEventManager.Instance.AddEventListener(CombatEventType.AddBuff, AddBuff);        }        protected override void ProUseSkill()        {        }        protected override void ProDispose()        {            CombatEventManager.Instance.RemoveEventListener(CombatEventType.AddBuff, AddBuff);        }        private void AddBuff(IEventData iEventData)        {            BuffEventData buffEventData = iEventData as BuffEventData;            if (buffEventData.source == CombatHeroEntity &&                !buffEventData.addActionsType.HasFlag(AddActionsType.JianJie))            {                CombatHeroEntity[] allHero =                    CombatController.currActiveCombat.CombatHeroController.GetHero(!CombatHeroEntity.IsEnemy);                if (allHero != null)                {                    for (int i = 0; i < allHero.Length; i++)                    {                        if (allHero[i] != buffEventData.target)                        {                            BuffInfo buffInfo = BuffInfo.GetBuffInfo(buffEventData.id, buffEventData.addCount);                            allHero[i].BuffControl.AddBuff(CombatHeroEntity, buffInfo, AddActionsType.JianJie);                        }                    }                }            }        }    }}
 |