How to save a destination on a variable from NavMesh clicking

I have this modified script from the NavMesh tutorial on the stealth project, i was trying to access the animator throu the script so when the player clicks it would also play the animation, i made that changing the Speed float of the animator but i need to find a way to tell the script that the player has reached the destination so it would change again to zero. any ideas? i’m pretty new to scripting.

heres the script

using UnityEngine;
using System.Collections;

public class NavCharScript : MonoBehaviour
{
public float turnSmoothing = 15f; // A smoothing value for turning the player.
public float speedDampTime = 0.0f;

NavMeshAgent agent;
private Animator anim;
private DoneHashIDs hash;
private Vector3 destination;

void Awake ()
{
	// Setting up the references.
	anim = GetComponent<Animator> ();
	hash = GameObject.FindGameObjectWithTag (DoneTags.gameController).GetComponent<DoneHashIDs> ();
	// Use this for initialization
}
void Start () 
{
 	agent = GetComponent<NavMeshAgent> ();

}

// Update is called once per frame
void Update () 
{

	if (Input.GetMouseButtonDown (0)) {
	
		Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
		RaycastHit hit;

		if(Physics.Raycast(ray, out hit, 100))
		{
			agent.SetDestination(hit.point);
			anim.SetFloat(hash.speedFloat, 1.0f, speedDampTime, Time.deltaTime);			}
	}
			

}

void Rotating (float horizontal, float vertical)
{
	// Create a new vector of the horizontal and vertical inputs.
	Vector3 targetDirection = new Vector3(horizontal, 0f, vertical);
	
	// Create a rotation based on this new vector assuming that up is the global y axis.
	Quaternion targetRotation = Quaternion.LookRotation(targetDirection, Vector3.up);
	
	// Create a rotation that is an increment closer to the target rotation from the player's rotation.
	Quaternion newRotation = Quaternion.Lerp(rigidbody.rotation, targetRotation, turnSmoothing * Time.deltaTime);
	
	// Change the players rotation to this new rotation.
	rigidbody.MoveRotation(newRotation);
}

}

You could check the remaining distance to the path end using:

and then if it is within a certain threshold from the end you can start scaling the speed down or whatever you want with it.