| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 | using Common.Utility.CombatEvent;using Fort23.Core;using GameLogic.Combat.CombatTool;using GameLogic.Combat.Hero;namespace GameLogic.Combat.Skill{    /// <summary>    /// 启动期间每使用一个功法生命恢复2%    /// </summary>    public class S60103 : SkillBasic    {        private DS60101 ds60101;        protected override void ProActiveSkill()        {            ds60101 = CombatHeroEntity.CombatHeroSkillControl.GetSkillBasic<DS60101>();            CombatEventManager.Instance.AddEventListener(CombatEventType.UseSkill, UseSkill);        }        private void UseSkill(IEventData iEventData)        {            if (ds60101 == null || !ds60101.isSkillActive)            {                return;            }            // SkillFeaturesData mySkillFeaturesData = null;            CombatUseSkillEventData combatUseSkillEventData = iEventData as CombatUseSkillEventData;            if (combatUseSkillEventData.useSkill.CombatHeroEntity == CombatHeroEntity)            {                long hp = CombatHeroEntity.MaxCombatHeroInfo.hp.Value;                long v = CombatCalculateTool.Instance.GetVlaueRatioForLong(hp, effectValue[0]);                CombatCalculateTool.Instance.Recover(CombatHeroEntity,                    CombatHeroEntity.GetMainHotPoin<CombatHeroHitPoint>(), v, AttType.Skill, HarmType.Default,                    triggerData);            }        }        protected override void ProDispose()        {            CombatEventManager.Instance.RemoveEventListener(CombatEventType.UseSkill, UseSkill);        }        protected override void ProUseSkill()        {        }    }}
 |