I literally don't understand why this isn't working. I've edited it so much and it just doesn't work. I get no output, the values just simply don't insert itself into the player.
wait(2) -- wait for the character to load pointsKey = "PlayerPoints" coinsKey = "PlayerCoins" newKey = "PlayerNew" function assignValues(plr) plr:WaitForDataReady(); wait(2) points = Instance.new("NumberValue") coins = Instance.new("NumberValue") notnew = Instance.new("BoolValue") --new notnew.Parent = plr notnew.Name = "NotNew" notnew.Value = plr:LoadBoolean(newKey) --points and coins points.Parent = plr points.Name = "Points" coins.Parent = plr coins.Name = "Coins" if notnew.Value == false then --check if player is new plr.NotNew.Value = true plr.Points.Value = 0 plr.Coins.Value = 0 if plr.PlayerGui.ScreenGui.Tutorial.Visible == false then plr.PlayerGui.ScreenGui.Tutorial.Visible = true plr.PlayerGui.ScreenGui.Tutorial.Position = UDim2.new(0, -600, 0, 100) plr.PlayerGui.ScreenGui.Tutorial:TweenPosition(UDim2.new(0,500,0,100), "Out", "Bounce", 1) end elseif notnew.Value == true then plr.Points.Value = plr:LoadNumber(pointsKey) plr.Coins.Value = plr:LoadNumber(coinsKey) end points.Changed:connect(function() saveStats(plr) end) coins.Changed:connect(function() saveStats(plr) end) notnew.Changed:connect(function() saveStats(plr) end) end function saveStats(plr) --coins and points save plr:SaveNumber(coinsKey, plr.Coins.Value) plr:SaveNumber(pointsKey, plr.Points.Value) --new save plr:SaveBoolean(newKey, plr.NotNew.Value) end game.Players.PlayerAdded:connect(assignValues)
You haven't assigned what plr is for the functions, try doing this for the AssignValue function.
game.Players.PlayerAdded:connect(function(plr) -- what you want here. end)