Need help with basic AI script.

I have a very basic AI script in which if you were move your character close enough to the enemy, the enemy will follow you. That part works great. The problem comes once the enemy reaches you, he keeps trying to follow you and I want it so that he stops once he reaches you.

void Update() 
	{	
		if(Vector3.Distance(myTransform.transform.position, target.position) <= 12)
		{
			isMoving = true;
			Quaternion targetRotation = Quaternion.LookRotation(target.position - myTransform.transform.position);
			targetRotation.x = 0;
			targetRotation.z = 0;
			myTransform.transform.rotation = targetRotation;
		
		if(isMoving == true)
		{
		myTransform.rigidbody.AddRelativeForce(Vector3.forward * moveSpeed, ForceMode.VelocityChange);
		}
	}
	else
		isMoving = false;
	
	if(Vector3.Distance(myTransform.transform.position, target.position) <= 1)
		isMoving = false;
}

HI,Its a simple fix all you have to do is add this part

float temomovespeed;

//ommited other part
void Start(){
temomovespeed = moveSpeed;
}

void Update(){
//ommited other part

 if(isMoving == true)
{
moveSpeed = temomovespeed;
myTransform.rigidbody.AddRelativeForce(Vector3.forward * moveSpeed, ForceMode.VelocityChange);
}
}
else
isMoving = false;
 
if(Vector3.Distance(myTransform.transform.position, target.position) <= 1)
isMoving = false;


if(!isMoving)
moveSpeed = 0;
}

void Update()
{
if(Vector3.Distance(myTransform.transform.position, target.position) <= 12)
{
isMoving = true;
Quaternion targetRotation = Quaternion.LookRotation(target.position - myTransform.transform.position);
targetRotation.x = 0;
targetRotation.z = 0;
myTransform.transform.rotation = targetRotation;

		if(isMoving == true)
			myTransform.rigidbody.AddRelativeForce(Vector3.forward * moveSpeed, ForceMode.VelocityChange);
	}
	else
		isMoving = false;
	
	if(Vector3.Distance(myTransform.transform.position, target.position) <= 2)
		isMoving = false;
		
	if(isMoving == false)
		moveSpeed = 0;
	else
		moveSpeed = 1;
}