1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- 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
- 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)
- {
- Vector3 forward = new Vector3(0, 0, 1);
- Vector3 eulerAngles = CombatHeroEntity.combatHeroGameObject.transform.eulerAngles;
- Vector3 zdPos = CombatHeroEntity.GetSpecialDotInfo("zdpos").GetWorlPos();
- for (int i = 0; i < 4; i++)
- {
- eulerAngles.y = i * 90;
- // 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);
- Quaternion quaternion = Quaternion.Euler(eulerAngles);
- Vector3 newForward = quaternion * forward;
- Vector3 targetPos = zdPos + newForward;
- 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);
- }
- }
- }
- }
|