So, im trying to make an system to choose an role for each player, and also choose a map for all players, so i tried this:
local roundLength = 10 local intermissionLength = 5 local status = game.ReplicatedStorage.IntermissionStatus local inround = game.ReplicatedStorage.InRound local chosenRandomNumberValue = game.ReplicatedStorage.chosenNumber local displaychosenrole = game.StarterGui.areyoumurdorsherifforinno.Chosen.TextLabel local player = game.Players.LocalPlayer local chosenRoleValue = game.ReplicatedStorage.TheChosenRole local randomMapNumber = math.random(1,3) local mineshaft = game.Workspace.MineshaftSpawn local milbase = game.Workspace.MilbaseSpawn local lobby = game.Workspace.LobbySpawn local ravenRock = game.Workspace.ravenrockSpawn local function roundTimer() while wait() do for i = intermissionLength, 1, -1 do inround.Value = false wait(1) status.Value = "Intermission: ".. i .." seconds left!" wait(1) end for i = roundLength, 1, -1 do inround.Value = true wait(1) status.Value = "Game: ".. i .." seconds left!" end end end inround.Changed:Connect(function() if inround.Value == true then for _, player in pairs(game.Players:GetChildren()) do local randomNumber = math.random(1,3) local char = player.Character if randomMapNumber == 1 then char.HumanoidRootPart.CFrame = mineshaft.CFrame elseif randomMapNumber == 2 then char.HumanoidRootPart.CFrame = milbase.CFrame elseif randomMapNumber == 3 then char.HumanoidRootPart.CFrame = ravenRock.CFrame end if randomNumber == 1 then player.TeamColor = BrickColor.new("Institutional white") chosenRoleValue.Value = "MURDERER" elseif randomNumber == 2 then player.TeamColor = BrickColor.new("Institutional white") chosenRoleValue.Value = "SHERIFF" elseif randomNumber == 3 then player.TeamColor = BrickColor.new("Institutional white") chosenRoleValue.Value = "INNOCENT" end end else for _,player in pairs(game.Players:GetChildren()) do local char = player.Character char.HumanoidRootPart.CFrame = lobby.CFrame player.TeamColor = BrickColor.new("Medium stone grey") chosenRoleValue.Value = "NEUTRAL" end end end) spawn(roundTimer)
And of course, it chooses an map for each player, and every player has the same role.. I tried switching it, and even doing it in another script, also i this is in "ServerScriptService", ofc its a normal script. Also does it need to be a local script, because if it does then how do i do that then, because i cant put a local script in "ServerScriptStorage". Also i want to make it so that only 1 player gets murderer, and only one sheriff, all the others become innocents.