im making a loading script for a task, this script is supposed to change the size and break the script when loaded to 100, but it isn't working, can anyone help?
01 | local a = game.StarterGui.SurfaceGui.ImageLabel.Frame |
02 |
03 | wait( 5 ) |
04 | while task.wait(math.random( 0.7 , 1.4 )) do |
05 | if script.Parent.Parent.Value.Value < 100 then |
06 | script.Parent.Size = UDim 2. new( 0 ,a.Frame.Size.X.Scale + 4 , 0 , 40 ) |
07 | script.Parent.Parent.Value.Value + = 1 |
08 | elseif script.Parent.Parent.Value.Value = = 100 then |
09 | break |
10 | end |
11 | end |
On the first line where you declared the variable a
, you had gotten the StarterGui
. This won't do anything because you're not directly editing the player's UI. When the game is run, the ui in StarterGui
gets replicated into Player.PlayerGui
. To fix this, get the local player and then get the UI.
1 | local Player = game:GetService( "Players" ).LocalPlayer |
2 | local a = Player:WaitForChild( "PlayerGui" ).SurfaceGui.ImageLabel.Frame |