So I am trying to make a bar that calculates how many assets in a table there are to load and then every asset the bar progresses the correct amount. How would I do this? Here is the script:
game.Players.PlayerAdded:connect(function(plr)
local gui = script.Welcome:Clone()
gui.Parent = plr.PlayerGui
local sound = gui.Sound
repeat wait() until plr.Character
plr.Character:remove()
wait(3)
wait(.2)
assets = {147183919,131326340,154904310}
asse = 1
for _, asset in ipairs(assets) do
local m = #assets
local bar = gui.Background.Progress.Bar
gui.Background.Preload.Text = "Preloading asset "..asset.." ("..asse.."/"..m..")"
game:GetService("ContentProvider"):Preload("http://www.roblox.com/asset/?id=" .. asset)
bar.Size = UDim2.new() --Trying to put it here, but I have no idea how to do the math
asse = asse + 1
wait(.3)
end
gui.Background.Preload.Text = "Done"
for i = 1,10 do
gui.Background.Preload.TextTransparency = gui.Background.Preload.TextTransparency + .1
wait(.01)
end
wait(1.5)
gui.Background.Preload:remove()
wait(1)
gui.Background.Message.Visible = true
sound:Play()
wait(1)
gui.Background.Secondary.Text.Visible = true
sound:Play()
wait(1)
gui.Background.Secondary.NameG.Visible = true
sound:Play()
wait(1)
gui.Background.Scripted.Text.Visible = true
gui.Background.Scripted.NameG.Visible = true
sound:Play()
wait(2)
for i = 1,10 do
gui.Background.Message.TextTransparency = gui.Background.Message.TextTransparency + .1
gui.Background.Message.TextStrokeTransparency = gui.Background.Message.TextStrokeTransparency + .1
gui.Background.Secondary.NameG.TextTransparency = gui.Background.Secondary.NameG.TextTransparency + .1
gui.Background.Secondary.NameG.TextStrokeTransparency = gui.Background.Secondary.NameG.TextStrokeTransparency + .1
gui.Background.Secondary.Text.TextTransparency = gui.Background.Secondary.Text.TextTransparency + .1
gui.Background.Secondary.Text.TextStrokeTransparency = gui.Background.Secondary.Text.TextStrokeTransparency + .1
gui.Background.Scripted.Text.TextTransparency = gui.Background.Secondary.Text.TextTransparency + .1
gui.Background.Scripted.Text.TextStrokeTransparency = gui.Background.Secondary.Text.TextStrokeTransparency + .1
gui.Background.Scripted.NameG.TextTransparency = gui.Background.Secondary.Text.TextTransparency + .1
gui.Background.Scripted.NameG.TextStrokeTransparency = gui.Background.Secondary.Text.TextStrokeTransparency + .1
wait(.1)
end
plr:LoadCharacter()
local gui = script.Welcome:Clone()
gui.Parent = plr.PlayerGui
gui.Background.Preload:remove()
wait(1)
for i = 1,100 do
gui.Background.BackgroundTransparency = gui.Background.BackgroundTransparency + .01
wait(.01)
end
gui:remove()
end)

1 comment
Thanks! I used both of the code you provided, the math was a bit wrong thought, I did num/m instead of a/num