luarolesrankrobloxleaderboard

attempt to index nil with 'leaderstats' in roblox studio


local garbage = game.Teams["Glizzy Garbage"]
local player = game.Players.LocalPlayer

if player.leaderstats.Pounds.Value <= 1000 then  --this is the line that the output is detecting the error
    player.Team = garbage
end

I am trying to make it where when the player reaches a certain amount of 'pounds' then they will automatically receive a roll. I've searched through many youtube videos and haven't found a fix or an alternative way to do this, and I'm not sure why this isn't working. This script is located in the workspace. All help is appreciated.


Solution

  • The LocalPlayer object is only exposed in LocalScripts. Because you're using a Script in the Workspace, you'll have to access the player object another way. It's also a good idea to handle this kind of logic inside a function that is fired any time the Pounds value changes.

    Try using the game.Players.PlayerAdded signal :

    local garbage = game.Teams["Glizzy Garbage"]
    
    game.Players.PlayerAdded:Connect(function(player)
        local Pounds = player.leaderstats.Pounds
        Pounds.Changed:Connect(function(value)
            if value <= 1000 then
                player.Team = garbage
            end
        end)
    end)