Scripting Helpers is winding down operations and is now read-only. More info→
Ad
Log in to vote
0

How do I stop an error from occuring? (see script below)

Asked by 5 years ago

I have this script in ServerScriptService:

01game.Players.PlayerAdded:Connect(function(player)
02    local cframeStored
03 
04    player.CharacterAdded:Connect(function(character)
05        local player = game.Players.LocalPlayer
06 
07        character:WaitForChild("Humanoid").Died:Connect(function()
08 
09            if player.Team == "Prisoner" then
10                cframeStored = CFrame.new(game.Workspace.Prisoner.Position + Vector3.new(0, 10, 0))
11            end
12        end)
13    end)
14end)

Whenever I play my game, Roblox outputs with this error message:

ServerScriptService.TeamSpawnLocation:9: attempt to index local 'player' (a nil value)

How do I fix this problem?

Any help is appreciated :)

1
Remove Line 5, LocalPlayer can't be used in ServerScripts. That's why it's throwing an error. killerbrenden 1537 — 5y
0
ty it works but do you know how to make line 9 - 10 work as well? JealousRegretHate 34 — 5y
0
Check my answer AnasBahauddin1978 715 — 5y
0
Lines 9 and 10 should still work if you remove line 5 because the player is set above on your first line. To fix line 9, you should be doing "player.Team.Name == "Prisoner" " MrLonely1221 701 — 5y
0
That doesn't seem to be working, When the player dies, it doesn't spawn to line 10 location. JealousRegretHate 34 — 5y

1 answer

Log in to vote
2
Answered by 5 years ago
Edited 5 years ago

The problem is that you are having local player in a server script instead use the parameter of the player added

Server Script:

01game.Players.PlayerAdded:Connect(function(player) -- The player is given here
02        local CFrameStored
03 
04        player. CharacterAdded:Connect(function(character)
05                character:WaitForChild("Humanoid").Died:Connect(function()
06                         if player.Team.Name == "Prisoner" then
07                               local CFrameStored =  CFrame.new(game.Workspace.Prisoner.Position + Vector3.new(0,10,0))
08                         end)
09                 end)
10        end)
11end)

If you see any mistakes it's because I'm on mobile

Ad

Answer this question