| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 | using UnityEngine;namespace GameLogic.Combat.Hero.SubStatus{    /// <summary>    /// 战斗待机状态    /// </summary>    public class FightIdleSubState : SubStatusBasic    {        private Vector3 initPos;        protected Vector3 targetPos;        private Vector3 startPos;        private float moveSpped = 1;        private float addTime;        private float allTime;        private float allTimeX;        protected override void ProInit()        {            initPos = CombatHeroEntity.dotPos;            allTimeX=Mathf.PI / 2;            allTime = 0;        }        protected override void ProDispose()        {        }        protected override void ProUpdate(float t)        {            allTime += t * 2f;            allTimeX += t * 1f;            Vector3 p = Vector3.Lerp(startPos, targetPos, allTime);            float y = Mathf.Sin(allTime) * (CombatHeroEntity.IsEnemy ? 0.1f : -0.1f);            float x = Mathf.Cos(allTimeX) * (CombatHeroEntity.IsEnemy ? 0.8f : -0.8f);            p = initPos + new Vector3(x, y, 0);            CombatHeroEntity.combatHeroGameObject.SetPosition(p);        }    }}
 |