while true do
local players = game.Players:GetPlayers()
local num = math.random(1, #players)
local player = players[num]
local teamservice = game:GetService("Teams")
local leader = teamservice:FindFirstChild("Leader")
local immigrant = teamservice:FindFirstChild("Immigrant")
local prisoner = teamservice:FindFirstChild("Prisoner")
local hasLeader = false
for _, plr in pairs(players) do
if plr.Team == leader then
hasLeader = true
break
end
end
local playerLeft = false
game.Players.PlayerRemoving:Connect(function(player)
if player == player then
playerLeft = true
end
end)
for _, plr in pairs(players) do
local gui = plr.PlayerGui.ScreenGui
visiblefalse(gui)
if plr == player and not hasLeader then
if plr == player then
gui["leader panel button"].Visible = true
print("visible true")
if player and leader then
player.Team = leader
print("leader true")
end
if player and immigrant then
local waitTime = 100
if playerLeft then
wait()
else
wait(waitTime)
end
if not playerLeft then
visiblefalse()
player.Team = immigrant
print("immigrant true")
end
end
end
else
print("elses true")
end
if plr ~= player and immigrant then
plr.Team = immigrant
print("last part true")
end
if plr == player and hasLeader then
visiblefalse(gui)
end
end
end