I recently made this script for my game that I'm currently working on. The script is supposed to make a textbox saying that you earned money appear everytime you click the button. But nothing is working. (BTW, I stripped down a few of the things in the script just for simplicity, so there's no debounce.)
moneyMsg = game.StarterGui.ScreenGui.TextBox button = game.StarterGui.ScreenGui.TextButton moneyMsg.Visible = false
function getMoney() moneyMsg.Visible = true wait(1) moneyMsg.Visible = false end
button.MouseButton1Click:connect(getMoney)
Please help!
Main Idea:
You are saying you want a gui to appear saying that you have received money. That is your question, but your script could be so much more simple and look way more professional. (This is to Help for the Gui, not the button, since you didnt provide if the button has a surface gui with a Button, or a Click Detector, either way the script should work.)
Lets Begin
First go into Starter Gui
and insert a Screen Gui
. Insert a Frame
Inside of the Screen Gui. Now insert a Text Box
inside of the frame. Inside of the screen gui, insert a Local Script
. Before we worry about the code, we will get your Text in the Right position. First change the size of your Frame and Text Box until you are happy with your results. Change the Text inside of the text box to You have received $MoneyNumberHere. Now to get the position of your frame in the center of your screen, change the variables to these {0.5,0},{0.5,0}. Now take the size of your frame, and divide the second number by 2, and the 4th number by 2, and put a negative sign in front of them. example: if my size is
{0,150},{0,200}
then my position would be:
{0.5,-75},{0.5,-100}
now your frame should be dead center.
Now will will learn about the Tween Service
. Now, right down the position of your frame then, change the first 0.5 in the position to 10. Now we will finally get into the script.
Lets Define some variables first:
local frame = script.Parent.Frame local button = game.Workspace.Button --Add some more here if you are doing more in the script--
Now we will begin working on the main script:
local frame = script.Parent.Frame local button = game.Workspace.Button --Add some more here if you are doing more in the script-- function addMoney() --Lets Work on Tweening-- frame:TweenPosition(UDim2.new(0.5,-75,0.5,-100),'Out','Quint',1) --The Tween position makes a new tween service, the numbers are where you want to have the frame tween, or animatie to, the out, can be changed with In, its just a different style. The quint can be changed with Bounce,Elastic,Linear and more. The link for the different styles will be at the end. The Number is how long it takes the frame to move to its destination.-- wait(3) frame:TweenPosition(UDim2.new(10, -75, 0.5, -100),'In','Quint',1) end button.MouseButton1Click:Connect(addMoney)
Wiki link to easing styles:http://wiki.roblox.com/index.php?title=API:Enum/EasingStyle
if you need anything else, just comment on my answer.