How to flip a 2D character depending on the screen position where I click?

I’m making a 2D game in space, with heroes that fly. When I click in a position, he goes to there flying. But how can I flip it when I send it to an opposite position that I sent the last time?

I don’t know if I’m explaining correctly… It’s a little hard to express, but I can drawing something if needs.

That’s the part of my script that’s move the character and that’s flip it:

	void Update () {

		if (Input.GetMouseButtonDown(0)) {
			target = Camera.main.ScreenToWorldPoint(Input.mousePosition);
			target.z = transform.position.z;
			}



		transform.position = Vector3.MoveTowards
			(transform.position, target, speed * Time.deltaTime);
	}    

	void Flip ()
	{
		// Switch the way the player is labelled as facing.
		facingRight = !facingRight;
		
		// Multiply the player's x local scale by -1.
		Vector3 theScale = playerGraphics.localScale;
		theScale.x *= -1;
		playerGraphics.localScale = theScale;
	}

you can always check the x position of your input against the x position of your hero, then do your logic according to that result.

something like this

// input position
target = Camera.main.ScreenToWorldPoint(Input.mousePosition);

if(target.x < hero.x) // input X position is less than hero x position ,thus you clicked on hero's left side
{
	if(facingRight)
	{
		Flip();
	}
}
else if(target.x > hero.x) // same as above, but this time inpus is bigger than hero's position, meaning you clicked on hero's right.
{
	if(!facingRight)
	{
		Flip();
	}
}