Make a moving object continue it's movement from the same direction , even it reaches target

Hello everyone, I’m stuck at a point in my game. I have a top-down camera, and a cube as a player. Cube fires projectiles by mouse click, we fire projectile to the position of mouse input, i achieved this with click to move code in unity wiki, basically we have our position defined as targetPosition in Attack.js .

Now in my projectile script, I did this :

private var positionToGo : Vector3;
function Start () {

positionToGo = Attack.targetPosition; // our var positionToGo equals to mouse input pos now


Now when I fire my projectile, it goes to the mouse input, that’s cool. But it stays there, i want to make it continue it’s way in the same direction but whatever i tried it always changes direction, I couldn’t find any solution since I use this to move projectile to mouse position:

transform.position = Vector3.MoveTowards(transform.position, positionToGo, Time.deltaTime * projectileSpeed);

So I tried doing something like this :

    if(Vector3.Distance(transform.position,positionToGo)>10 && canMoveToMouseClick)
         transform.position = Vector3.MoveTowards(transform.position, positionToGo,  Time.deltaTime * projectileSpeed);  
// if projectile is still far away from mouse position, make it go to the mouse position
         canMoveToMouseClick = false; // if it's close enough to mouse position, make a variable false
          // and if that variable is false, make the game object move without changing it's direction, but how ?
    // you know something like 
    // transform.Translate(transform.forward * Time.deltaTime * projectileSpeed, Space.Self);
    // but it doesnt work, it just changes direction both i tried self and world.

So can anyone help guys ? Thanks.

Okay I solved it,
transform.Translate(directionObject.transform.forward * Time.deltaTime * projectileSpeed, Space.Self); // directionObject whose transform looks at mouse input position. I’m not deleting post maybe someone will have similar problem.