I made a code that puts my username in a string value that I have placed in my startergui and then I made a remote function to basically make a copy of that string value and put it in the workspace and now I want to add a text button so that the remote function will not run until I click on the text button… I've tried a couple times and it will not work with the mousebutton1click method and I do not understand why because when I take out the mousebutton1click code it works perfectly fine... Does anyone know how I could do this?
Localscript :
1 | local player = game.Players.LocalPlayer |
2 | local val = game.StarterGui.Value |
3 |
4 |
5 | val.Value = player.Name.. "1" |
6 |
7 | game.ReplicatedStorage.RemoteFunction:InvokeServer(val.Value) |
Script :
1 | game.ReplicatedStorage.RemoteFunction.OnServerInvoke = function (player,code) |
2 | local vall = Instance.new( "StringValue" ) |
3 | vall.Parent = workspace |
4 | vall.Value = code |
5 | end |
I assume that your codes are based on StarterGui , which is the wrong way to get the player's gui.
Your GUI
path should be this:
1 | --Local Script |
2 | local PlayerGui = game.Players.LocalPlayer:WaitForChild( "PlayerGui" ) |
3 | local Button = PlayerGui. -- Your path |
4 | Button.MouseButton 1 Click:Connect( function () |
5 | --Your codes |
6 | end ) |
I hope this solution helps you. However, due to the limited details, it may not work fine for you.
More Details: PlayerGui.