public override AttackObjectState GetNextState()
 {
     if (this.m_Config.SpriteAnimator.GetClipByName(AnimationNameConstants.MIDDLE) != null ||
         this.m_Config.SpriteAnimator.GetClipByName(AnimationNameConstants.MIDDLE_UP) != null)
     {
         if (this.m_Behavior.DestinationObject is TargetObject && !((TargetObject)this.m_Behavior.DestinationObject).Target.IsStaticTarget())
         {
             return(new AttackObjectTraceMiddleState());
         }
         else
         {
             return(new AttackObjectMiddleState());
         }
     }
     else if (this.m_Config.EndPrefab != null)
     {
         AttackObjectPrefabEndState endState = new AttackObjectPrefabEndState();
         return(endState);
     }
     else if (this.m_Config.SpriteAnimator.GetClipByName(AnimationNameConstants.END) != null)
     {
         AttackObjectEndState endState = new AttackObjectEndState();
         return(endState);
     }
     return(null);
 }
    public override AttackObjectState GetNextState()
    {
        if (this.m_Config.EndPrefab != null)
        {
            AttackObjectPrefabEndState endState = new AttackObjectPrefabEndState();
            return(endState);
        }
        else if (this.m_Config.SpriteAnimator.GetClipByName(AnimationNameConstants.END) != null)
        {
            AttackObjectEndState endState = new AttackObjectEndState();
            return(endState);
        }

        return(null);
    }