| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 | using CombatLibrary.CombatLibrary.CombatCore.CustomizeTimeLogic.FxLogic;using GameLogic.Combat.CombatTool;using GameLogic.Combat.Hero;using UnityEngine;using UTool.CustomizeTimeLogic.FxLogic.TimeLineEventinterface;namespace GameLogic.Combat.Skill{    /// <summary>    /// 战士的旋风斩    /// </summary>    public class S10001 : SkillBasic    {        protected float _harm;        protected override void ProInitSkill()        {            _harm = 400;            AddTriggerCallBack("sk1_fashe", Sk1_fasheTrigger);        }        // protected override ILifetCycleHitPoint[] ProGetTineLineTargetEntity(        //     TimeLineEventLogicBasic timeLineEventLogicBasic)        // {        //     ILifetCycleHitPoint[] allHero = new ILifetCycleHitPoint[_enterAlertTarget.Count];        //     for (int i = 0; i < _enterAlertTarget.Count; i++)        //     {        //         allHero[i] = _enterAlertTarget[i].GetMainHotPoin<ILifetCycleHitPoint>();        //     }        //        //     return allHero;        // }        protected override void ProUseSkill()        {            ActivationTimeLineData("sk1");        }        protected void Sk1_fasheTrigger(string groupName, CombatHeroHitPoint targetEntity,            ITimelineFxLogic timelineFxLogic,            TriggerData triggerData)        {            long v = CombatCalculateTool.Instance.GetVlaueRatioForLong(CombatHeroEntity.CurrCombatHeroInfo.attack.Value,                _harm);            HarmReturnInfo harmReturnInfo = Harm(CombatHeroEntity, targetEntity,                v, AttType.Skill, triggerData);        }        protected override void ProDefaultTimeLineTrigger(string groupName, CombatHeroHitPoint targetEntity,            ITimelineFxLogic timelineFxLogic,            TriggerData triggerData)        {            if (targetEntity.combatHeroEntity == CombatHeroEntity)            {                for (int i = 0; i < 4; i++)                {                    Vector3 forward = CombatHeroEntity.combatHeroGameObject.transform.forward;                    Quaternion quaternion = Quaternion.AngleAxis(i * 90, Vector3.up);                    // quaternion = quaternion + CombatHeroEntity.combatHeroGameObject.transform.rotation;                    // Vector3 newAngle = new Vector3(eulerAngles.x, eulerAngles.y + i * 15+180, eulerAngles.z);                    // Quaternion quaternion = Quaternion.Euler(newAngle);                    forward = quaternion * forward;                    Vector3 targetPos = CombatHeroEntity.combatHeroGameObject.transform.position + forward;                    ActivationTimeLineData("sk1_fashe", null, new Vector3[] { targetPos });                }            }            else            {                long v = CombatCalculateTool.Instance.GetVlaueRatioForLong(CombatHeroEntity.CurrCombatHeroInfo.attack.Value,                    _harm);                HarmReturnInfo harmReturnInfo = Harm(CombatHeroEntity, targetEntity,                    v, AttType.Skill, triggerData);            }                   }    }}
 |