Implementing a slingshot...

Hello. I want to implement a slingshot into my 2.5D game (similar to Angry Birds but with a key difference). Instead of the slingshot being fixed to a single starting position, the user clicks/touches anywhere on the screen, drags down/left/etc. and then lets go to launch the object (essentially, it gives the player more freedom). Anyways, my current idea for how to accomplish this was

1: Get the position of the mouse down event.
2: Get the position of the mouse up event.
3: Get the difference between those two events.
4: Use rigidbody.AddForce Vector3 to launch the object (where Vector3 is the difference).

Does this sound like a good idea or is there a way that is more efficient (I’m not looking for anyone to do my work for me or anything, I just want to know if I am on the right track)? Also, how do you use rigidbody.AddForce with a variable? I keep getting syntax errors when I do something like rigidbody.AddForce.TheDifference and have only been able to get it to by using rigidbody.AddForce(x,y,z).

Thanks.

Thats basically what I did…

Get intput down position
Get input up position
Get distance between the 2 and angle/ vector
Have a max distance and a max force

Force =(distance/maxdistance)*maxforce

Use that force to fire along the vector between the two input points