while true do wait(.01) if game.Players.LocalPlayer.Character ~= nil then if script.Parent.Parent.Parent.Parent.Parent.ASN.Value <= 0 then script.Parent.Visible = false else script.Parent.Visible = true end else return end function click() script.Parent.Parent.SSN.SSN.Value = script.Parent.Parent.SSN.SSN.Value + 1 script.Parent.Parent.Parent.Parent.Parent.ASN.Value = script.Parent.Parent.Parent.Parent.Parent.ASN.Value - 1 end end script.Parent.MouseButton1Down:connect(click)
So, This is meant to add a number to the number but, it doesn't click, the gui does not work.
script.Parent.MA.Text = script.Parent.MA.MAV.Value script.Parent.AV.Text = script.Parent.AV.AV.Value script.Parent.BN.Text = script.Parent.BN.BN.Value script.Parent.EN.Text = script.Parent.EN.EN.Value script.Parent.SN.Text = script.Parent.SN.SN.Value script.Parent.SSN.Text = script.Parent.SSN.SSN.Value script.Parent.BSN.Text = script.Parent.BSN.BSN.Value script.Parent.BWSN.Text = script.Parent.BWSN.BWN.Value script.Parent.AN.Text = script.Parent.AN.AN.Value script.Parent.GSL.Text = script.Parent.GSL.GSN.Value
it even is connected through here, the values and the text. Why isn't this working?
break
and return
do different things, break exits a loop and continues the code execution where as return stops the code execution and passes back a value. You also have another problem which is the function click
only exists inside the loop. Lastly it also helps to tab your code so you can tell when each if statement ends.
Example of the problem (return)
local i = 0 while true do i = i + 1 if i > 5 then print('loop ended') return end end print('end')
output:-
loop ended
(break)
local i = 0 while true do i = i + 1 if i > 5 then print('loop ended') break end end print('end')
output:-
loop ended
end
I hope this helps
There was no point of making a loop since we can use Changed
event
You should put the function out of the loop
Your script:
while true do wait(.01) if game.Players.LocalPlayer.Character ~= nil then if script.Parent.Parent.Parent.Parent.Parent.ASN.Value <= 0 then script.Parent.Visible = false else script.Parent.Visible = true end else return end function click() script.Parent.Parent.SSN.SSN.Value = script.Parent.Parent.SSN.SSN.Value + 1 script.Parent.Parent.Parent.Parent.Parent.ASN.Value = script.Parent.Parent.Parent.Parent.Parent.ASN.Value - 1 end end script.Parent.MouseButton1Down:connect(click)
My script (Fixed):
local Player = game.Players.LocalPlayer local ASN = script.Parent.Parent.Parent.Parent.Parent.ASN Player.CharacterAdded:connect(function() if Player.Character ~= nil then if ASN.Value <= 0 then script.Parent.Visible = false else script.Parent.Visible = true end end end) ASN.Changed:connect(function(newValue) if newValue <= 0 then script.Parent.Visible = false end end) function click() script.Parent.Parent.SSN.SSN.Value = script.Parent.Parent.SSN.SSN.Value + 1 ASN.Value = ASN.Value - 1 end script.Parent.MouseButton1Down:connect(click)
You can read more about Changed
event here http://wiki.roblox.com/index.php?title=API:Class/IntValue/Changed