I am trying to make a tool that creates and moves a part in the direction of a surface's normal (i.e perpendicular) vector. The surface would be determined by a mouseClick. I have the tool itself along with the target detection completed; however, I need to make the part that is created move outwards from whatever surface is clicked (if I click the bottom of a brick, the new part would move downwards from it, and if I clicked the side of a brick at a 45 degree angle, it would come straight out of that side, etc.)
How would I go about doing this? Is it even possible?
A similar scenario involves having a projectile come out of your player in the appropriate direction based on your rotation, and the orientation of the surface you're standing on. This "Orientation" is difficult to obtain because your character doesn't rotate according to the slant of the brick you're standing on. How can I get that slant (assuming I know what brick the player is currently standing on)?
I understand this may be a very complex problem, but it would tremendously help my game development progress. Credit will be given where credit is due. Thanks in advance.

2 comments
This is not complex at all, and I know you didn't attempt this scripting wise yet, but I'll write a script for you anyway.
I was going to accept your answer, but I did in fact try to do this many times. You didn't have to assume that I didn't, and that was rude.