Flip Running Animation?

I’m having a bit of trouble trying to reverse the running animation of my character sprite. The thing that confuses me is that it reverses the idle standing animation, as well as the jumping animation. It just won’t do the same for the running animation. When running left, it just holds the idle animation. So, why is it selective? Why won’t it play a reverse running animation, yet plays everything else?

Here is the movement control script.

Animator anim;
public Rigidbody2D rb;
public int playerSpeed = 10;
public bool facingRight = true;
private float moveX;
public bool grounded = false;
public Transform groundCheck;
float groundRadius = 0.2f;
public LayerMask whatIsGround;

void Update()
{
    rb = GetComponent<Rigidbody2D>();
    PlayerMove();
    anim = GetComponent<Animator>();
    grounded = Physics2D.OverlapCircle(groundCheck.position, groundRadius, whatIsGround);
    anim.SetBool("Ground", grounded);
    anim.SetFloat("vSpeed", GetComponent<Rigidbody2D>().velocity.y);
    float move = Input.GetAxis("Street");
    anim.SetFloat("Speed", move);
}

void PlayerMove()
{

    float moveX = Input.GetAxis("Street");

    if (moveX < 0.0f && facingRight == false)
    {
        FlipPlayer();
    }
    else if (moveX > 0.0f && facingRight == true)
    {
        FlipPlayer();
    }
    gameObject.GetComponent<Rigidbody2D>().velocity = new Vector2(moveX * playerSpeed, gameObject.GetComponent<Rigidbody2D>().velocity.y);

}

void FlipPlayer()
{
    facingRight = !facingRight;
    Vector2 localScale = transform.localScale;
    localScale.x *= -1;
    transform.localScale = localScale;
    anim.GetComponent<Animator>();
    float move = Input.GetAxis("Street");
    anim.SetFloat("Speed", move);
}

And, here is the jumping script.

public int JumpPower = 1250;
//public Rigidbody2D rb;

void Update()
{
    //rb = GetComponent<Rigidbody2D>();
    PlayerMove();
}

void PlayerMove()
{
    if (Input.GetButtonDown("Ups"))
    {
        Jump();
    }
}

void Jump()
{
    GetComponent<Rigidbody2D>().AddForce(Vector2.up * JumpPower);
}

So, I figured it out. Basically, I did some patchwork from other scripts I made where the animation worked, but the jumping didn’t. Here are the two scripts, for running/animation, and for jumping, if anyone needs a reference like me. Couple them on your player. It’s bloated and rough, but it at least seems to work.

Animator anim;
public Rigidbody2D rb;
public int playerSpeed = 10;
public bool facingRight = true;
//public int playerJumpPower = 1250;
private float moveX;
public bool grounded = false;
public Transform groundCheck;
float groundRadius = 0.2f;
public LayerMask whatIsGround;

void Update()
{
    rb = GetComponent<Rigidbody2D>();
    PlayerMove();
    anim = GetComponent<Animator>();
    grounded = Physics2D.OverlapCircle(groundCheck.position, groundRadius, whatIsGround);
    anim.SetBool("Ground", grounded);
    anim.SetFloat("vSpeed", GetComponent<Rigidbody2D>().velocity.y);
    float move = Input.GetAxis("Street");
    anim.SetFloat("Speed", move);

    float moveHorizontal = Input.GetAxis("Street");

    Flip(moveHorizontal);

    anim.SetFloat("Speed", Mathf.Abs(moveHorizontal));
}

void PlayerMove()
{

    float moveX = Input.GetAxis("Street");

    if (moveX < 0.0f && facingRight == false)
    {
        FlipPlayer();
    }
    else if (moveX > 0.0f && facingRight == true)
    {
        FlipPlayer();
    }
    gameObject.GetComponent<Rigidbody2D>().velocity = new Vector2(moveX * playerSpeed, gameObject.GetComponent<Rigidbody2D>().velocity.y);

}

void FlipPlayer()
{
    facingRight = !facingRight;
    Vector2 localScale = gameObject.transform.localScale;
    localScale.x *= -1;
    transform.localScale = localScale;
    //anim.GetComponent<Animator>();
    //float move = Input.GetAxis("Street");
    //anim.SetFloat("Speed", move);
}

private void Flip(float horizontal)
{
    if (horizontal > 0 && !facingRight || horizontal < 0 && facingRight)
    {
        facingRight = !facingRight;
        Vector2 theScale = transform.localScale;
        theScale.x *= -1;
        transform.localScale = theScale;
    }
}

And, for jumping.

Animator anim;
public Rigidbody2D rb;
bool grounded = false;
public Transform groundCheck;
float groundRadius = 0.2f;
public float jumpForce = 1000;
public LayerMask whatIsGround;
//private float verticalVelocity;
//private float gravity = 14.0f;
//public float jumpSpeed = 10;

void Start()
{
    rb = GetComponent<Rigidbody2D>();
    anim = GetComponent<Animator>();
}

void Update()
{
    grounded = Physics2D.OverlapCircle(groundCheck.position, groundRadius, whatIsGround);
    anim.SetBool("Ground", grounded);
    anim.SetFloat("vSpeed", GetComponent<Rigidbody2D>().velocity.y);
    PlayerMove();
}

void PlayerMove()
{
    if (grounded && Input.GetButtonDown("Ups"))
    {
        Ups();
    }
}

void Ups()
{
    rb.velocity = new Vector2(0, 20);
}