I've got this Exp bar script that I've been working on, but it simply doesn't work. No error in the output or anything, it just doesn't run. It is in a Local Script, and I know that the Hierarchy is right as well. What is wrong here?
wait(2) local xps = {0, 3, 6, 10, 15, 20, 25, 30, 40, 50, 65, 80, 95, 110, 125, 140, 155, 180, 210, 250, 300, 350, 400, 450, 500, 575, 650, 725, 825, 1000}; function hudsize() local Player = game.Players.LocalPlayer local level = Player.leaderstats.Level.Value local ExpBar = script.Parent.ExpBar local xp = Player.Exp.Value local level = Player.leaderstats.Level.Value for level = 1, #xps do local required = ((xps[level] * 100)/xp) wait(.1) local size = (required * 200) wait(.1) ExpBar.Size = UDim2.new(0,15,0,size) print(Player.Name.."'s ExpBar Size is "..size) end end game.Players.PlayerAdded:connect(hudsize) game.Players.LocalPlayer.Exp.Changed:connect(hudsize)
PlayerAdded
doesn't fire for LocalScripts, for some reason. Just use ChildAdded
instead (and if needed, check that new children actually are Player
instances)
Most likely that is your problem.