/// <summary>
        /// 正常寻路,寻路完成后进入Idle状态
        /// </summary>
        /// <param name="self"></param>
        /// <param name="target"></param>
        public static void CommonNavigate(this UnitPathComponent self, Vector3 target)
        {
            if (!self.Entity.GetComponent <StackFsmComponent>().ChangeState <NavigateState>(StateTypes.Run, "Navigate", 1))
            {
                return;
            }

            IdleState idleState = ReferencePool.Acquire <IdleState>();

            idleState.SetData(StateTypes.Idle, "Idle", 1);

            self.MoveTodoSomething(target, self.Entity.GetComponent <StackFsmComponent>().GetCurrentFsmState(), idleState).Coroutine();
        }