|
@@ -1,4 +1,5 @@
|
|
|
using CombatLibrary.CombatLibrary.CombatCore.CustomizeTimeLogic.FxLogic;
|
|
|
+using Core.Utility;
|
|
|
using UnityEngine;
|
|
|
using UTool.CustomizeTimeLogic.FxLogic.TimeLineEventLogic;
|
|
|
|
|
@@ -18,6 +19,10 @@ namespace GameLogic.Combat.Skill.MagicSkill
|
|
|
protected bool isUpdateMove;
|
|
|
protected float showSizeTime;
|
|
|
|
|
|
+ protected int state;
|
|
|
+
|
|
|
+ private BesselPath _besselPathA;
|
|
|
+
|
|
|
protected override void ProInit()
|
|
|
{
|
|
|
}
|
|
@@ -25,9 +30,39 @@ namespace GameLogic.Combat.Skill.MagicSkill
|
|
|
protected override void ProSetInfo()
|
|
|
{
|
|
|
isUpdateMove = false;
|
|
|
- TimeLineEventLogicGroupBasic timeLineEventLogicGroupBasic =
|
|
|
- _skillBasic.ActivationTimeLineData("sk1_xiaoshi");
|
|
|
- timeLineEventLogicGroupBasic.TimeLineUpdateEnd = XiaoShiFinish;
|
|
|
+
|
|
|
+ int odds = UnityEngine.Random.Range(0, 100);
|
|
|
+
|
|
|
+ // if (odds < 1)
|
|
|
+ {
|
|
|
+ state = 0;
|
|
|
+ TimeLineEventLogicGroupBasic timeLineEventLogicGroupBasic =
|
|
|
+ _skillBasic.ActivationTimeLineData("sk1_xiaoshi");
|
|
|
+ timeLineEventLogicGroupBasic.TimeLineUpdateEnd = XiaoShiFinish;
|
|
|
+ }
|
|
|
+ // else
|
|
|
+ // {
|
|
|
+ // state = 1;
|
|
|
+ // // Vector3 p1 =
|
|
|
+ // // _skillBasic.CombatHeroEntity.GameObject.transform.TransformPoint(new Vector3(-5f, 5f, 5f));
|
|
|
+ // // Vector3 p2 = SetTargetPos2();
|
|
|
+ // // _besselPathA.controlPoints.Add(_skillBasic.CombatHeroEntity.GameObject.transform.position);
|
|
|
+ // // _besselPathA.controlPoints.Add(p1);
|
|
|
+ // // _besselPathA.controlPoints.Add(p2);
|
|
|
+ // // _besselPathA.controlPoints.Add(target.dotPos);
|
|
|
+ // //
|
|
|
+ //
|
|
|
+ // _besselPathA = new BesselPath();
|
|
|
+ // _besselPathA.controlPoints.Add(CombatHeroEntity.dotPos);
|
|
|
+ // _besselPathA.controlPoints.Add(
|
|
|
+ // CombatHeroEntity.GameObject.transform.TransformPoint(new Vector3(-5f, 5f, 5f)));
|
|
|
+ //
|
|
|
+ // _besselPathA.controlPoints.Add(target.GameObject.transform.TransformPoint(new Vector3(-5f, 6f, 5f)));
|
|
|
+ // Vector3 headPos = target.dotPos + new Vector3(0, 5, 0);
|
|
|
+ // _besselPathA.controlPoints.Add(headPos);
|
|
|
+ // currTime = 0;
|
|
|
+ // isUpdateMove = true;
|
|
|
+ // }
|
|
|
}
|
|
|
|
|
|
private void XiaoShiFinish()
|
|
@@ -81,6 +116,7 @@ namespace GameLogic.Combat.Skill.MagicSkill
|
|
|
targetPos = target.dotPos;
|
|
|
currTime = 0;
|
|
|
isUpdateMove = true;
|
|
|
+ state = 3;
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -99,15 +135,35 @@ namespace GameLogic.Combat.Skill.MagicSkill
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
- currTime += t * moveSpeed;
|
|
|
- // Vector3 size = Vector3.Lerp(currSize, targetSize, currTime);
|
|
|
- Vector3 pos = Vector3.Lerp(currPos, targetPos, currTime);
|
|
|
- CombatHeroEntity.combatHeroGameObject.SetPosition(pos);
|
|
|
- // CombatHeroEntity.combatHeroGameObject.SetScale(size);
|
|
|
- if (currTime > 1)
|
|
|
+ if (state == 1)
|
|
|
{
|
|
|
- isUpdateMove = false;
|
|
|
- AllFinish();
|
|
|
+ currTime += t * 0.5f;
|
|
|
+
|
|
|
+ Vector3 a1 = _besselPathA.CalculatePoint(currTime);
|
|
|
+ Vector3 a2 = _besselPathA.CalculatePoint(currTime - 0.01f);
|
|
|
+ CombatHeroEntity.combatHeroGameObject.SetPosition(a1);
|
|
|
+ CombatHeroEntity.GameObject.transform.rotation = Quaternion.LookRotation((a1 - a2).normalized);
|
|
|
+ if (currTime > 1)
|
|
|
+ {
|
|
|
+ isUpdateMove = false;
|
|
|
+ CombatHeroEntity.combatHeroGameObject.SetScale(new Vector3(3, 3, 3));
|
|
|
+ CombatHeroEntity.GameObject.transform.eulerAngles =
|
|
|
+ new Vector3(0, target.GameObject.transform.eulerAngles.y + 180, 0);
|
|
|
+ ShowFinish();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else if (state == 3)
|
|
|
+ {
|
|
|
+ currTime += t * moveSpeed;
|
|
|
+ // Vector3 size = Vector3.Lerp(currSize, targetSize, currTime);
|
|
|
+ Vector3 pos = Vector3.Lerp(currPos, targetPos, currTime);
|
|
|
+ CombatHeroEntity.combatHeroGameObject.SetPosition(pos);
|
|
|
+ // CombatHeroEntity.combatHeroGameObject.SetScale(size);
|
|
|
+ if (currTime > 1)
|
|
|
+ {
|
|
|
+ isUpdateMove = false;
|
|
|
+ AllFinish();
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|