Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

My stamina bar does not move the right way help?

Asked by 5 years ago
Edited 5 years ago

I have created a skinny stamina bar on the side of the players screen, and when they sprint with the shift key it decreases. The problem is that the GUI is decreasing the wrong way. The bar is decreasing from bottom to top instead of top to bottom. The below code is how the bar changes while sprinting. I know this is probably an easy fix but it seems like I'm not going anywhere with it. Any help would be much appreciated

replicatedStorage.RemoteEvents.StaminaUpdate.OnClientEvent:Connect(function(stamina, maxStamina)
    players.LocalPlayer.PlayerGui.Stamina.Bar.Size = UDim2.new(0, 17, 0, (stamina / maxStamina) * 97)
end)

1 answer

Log in to vote
1
Answered by 5 years ago

You need to be using the X.Offset instead of the Y

Here's some sample test code I wrote to test this:

stamina = 1000
maxStamina = 1000
while wait(2) do

    script.Parent.Size = UDim2.new(0, (stamina / maxStamina)* script.Parent.Size.X.Offset, 0,  script.Parent.Size.Y.Offset)
    stamina = stamina - 10
    if stamina <=0 then
        stamina=maxStamina
    end
end

in your case the change would be

replicatedStorage.RemoteEvents.StaminaUpdate.OnClientEvent:Connect(function(stamina, maxStamina)
2
        players.LocalPlayer.PlayerGui.Stamina.Bar.Size = UDim2.new(0,(stamina / maxStamina) * 17, 0,  97)
3
    end)

I like using Size.X.Offset, so i can make changes in the GUI to the size without worrying about changing hardcoded values (in your case 17 for Size.X.Offset and 97 for Size.Y.Offset.

Anyway, hope that helps.

Ad

Answer this question