| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 | using Common.Utility.CombatEvent;using Fort23.Core;using GameLogic.Combat.Buff;using GameLogic.Combat.CombatTool;using GameLogic.Player;namespace GameLogic.Combat.Skill{    /// <summary>    /// 崩脉决 前方功法照成伤害时有5%概率施加一层对应属性的伤势    /// </summary>    public class S2003 : SkillBasic    {        protected override void ProUseSkill()        {        }        protected override void ProReplace()        {            CombatEventManager.Instance.RemoveEventListener(CombatEventType.HeroInjured, HeroInjured);        }        protected override void ProActiveSkill()        {            CombatEventManager.Instance.AddEventListener(CombatEventType.HeroInjured, HeroInjured);        }        private void HeroInjured(IEventData iEventData)        {            HeroInjuredEventData heroInjuredEventData = iEventData as HeroInjuredEventData;            if (heroInjuredEventData.HarmReturnInfo.source == CombatHeroEntity)            {                SkillBasic skillBasic = heroInjuredEventData.HarmReturnInfo.triggerData.Source as SkillBasic;                if (skillBasic != null && IsPassiveActivateSkill(skillBasic))                {                    int odds = CombatCalculateTool.Instance.GetOdd(0, 100);                    if (odds < effectValue[0])                    {                        BuffInfo buffInfo = null;                        switch (skillBasic.wuXingType)                        {                            case WuXingType.Gold:                                buffInfo = BuffInfo.GetBuffInfo(10291, 1, this);                                break;                            case WuXingType.Fire:                                buffInfo = BuffInfo.GetBuffInfo(10321, 1, this);                                break;                            case WuXingType.Wood:                                buffInfo = BuffInfo.GetBuffInfo(10301, 1, this);                                break;                            case WuXingType.Earth:                                buffInfo = BuffInfo.GetBuffInfo(10331, 1, this);                                break;                            case WuXingType.Water:                                buffInfo = BuffInfo.GetBuffInfo(10311, 1, this);                                break;                        }                        heroInjuredEventData.HarmReturnInfo.target.combatHeroEntity.BuffControl.AddBuff(                            CombatHeroEntity, buffInfo);                    }                }            }        }    }}
 |