cray13
cray13

Reputation: 3

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.

Upvotes: 0

Views: 3077

Answers (3)

Soviet Union
Soviet Union

Reputation: 1

try instead of putting team name put team colour

also use

player.Team.Service = garbage

end)

Upvotes: 0

Merric White
Merric White

Reputation: 1

Mine is just

local plrStage = plr.leaderstats.Stage.Value

Upvotes: 0

Kylaaa
Kylaaa

Reputation: 7188

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)

Upvotes: 0

Related Questions