[Solved]Top-down shooter camera recoil effect

Hey everyone.I have been stuck in this for a while and now have run out of ideas.So the problem is i want to make a recoil effect for camera for a top down game i am making.The camera just follow the player using simply being at x and z axis of the target.Now all is well but i want to implement a recoil function where the camera shakes a little for a certain period of time in the direction of the player.I have made a function like this

function Shake(shakeTime: float, shakeDistance: float) {
var startTime: float = Time.time;
neutralPos.x = transform.position.x;
neutralPos.z = transform.position.z;
while (Time.time < startTime + shakeTime) {
transform.position.x = neutralPos.x + (Random.insideUnitSphere.x * 0.2);
transform.position.z = neutralPos.z + (Random.insideUnitSphere.z * 0.2);
yield;
}
transform.position.x = neutralPos.x;
transform.position.z = neutralPos.z;
}

But it just shakes the camera and dosent really care about the direction of the player.So how can i go about shaking or “Recoiling” effect if i want it in a particular direction.

Solved it .

function Shake2(shakeTime: float, shakeDistance: float)
{
 var startTime: float = Time.time;
   nut=transform.position;
   neutralPos=Target.TransformDirection(Vector3.forward);
  while (Time.time < startTime + shakeTime) {
   transform.position=Vector3.Lerp(transform.position,nut+neutralPos*shakeDistance,shakeTime);
  yield;
  }
  transform.position=nut;
}