To answer your first question:
First, you should make sure that it is a TextButton, and not a TextBox. Next, make sure it is a LocalScript. Also, the script.Parent.Parent is the ScreenGui, so it should be a script.Parent.
Also, is the sound inside of the LocalScript? If not, then put it inside of it.
The script should look like this now.
1 | script.Parent.MouseButton 1 Click:connect( function () |
Then, the place with the Gui must have the children of "ScreenGui, TextButton, Script, and Sound". I don't know the answer to the second question, however.