So im making a game where the intermission begins in 20 seconds and then the game starts and lasts till 180 seconds, each round takes 20 seconds , after the beginning of the round all the players get teleported in the middle of the map.but idk how to make it more rounds in a game so there will be another gui with countdown for round and i also dont know how to make the game the end if there are no more players left , so the game doesnt play itself.Pls helppppp i cant solve this problem :( here is the script for intermission countdown , teleport players and round countdown all in serverscriptservice except the local script from the timer(gui that shows the intermission countdown and round countdown):

script from serverscriptservice:

local roundLenght = 140
	 
	local intermissionLenght = 20
	 
	local InRound = game.ReplicatedStorage.InRound
	 
	local Status = game.ReplicatedStorage.Status
	 
	local LobbySpawn = game.Workspace.LobbySpawn
	 
	local GameAreaSpawn = game.Workspace.GameAreaSpawn
	 
	InRound.Changed:Connect(function()
	 
	    if InRound.Value == true then
	 
	        for _, player in pairs(game.Players:GetChildren()) do
	 
	            local char = player.Character
	 
	            char.HumanoidRootPart.CFrame = GameAreaSpawn.CFrame
	 
	        end
        else
	    for _, player in pairs(game.Players:GetChildren()) do
	 
	            local char = player.Character
	 
	            char.HumanoidRootPart.CFrame = LobbySpawn.CFrame
	 
	        end
	    end        
	end)
	 
	local function roundTimer()
	 
	    while wait() do
	 	        for i = intermissionLenght, 1, -1 do
	 
	            InRound.Value = false
	 
            wait(1)
	 
	            Status.Value ="Intermission: ".. i .." seconds left!"
	 
	        end
	 
	        for i = roundLenght, 1, -1 do
	 
	            InRound.Value = true
 
	            wait(1)
	 
	            Status.Value = "Game: ".. i .." seconds left!"
	 
	        end
	    end
	end
	spawn(roundTimer)

script from the timer gui:

local Status = game.ReplicatedStorage.Status
	local TimerDisplay = script.Parent.TimerDisplay
	 
	Status.Changed:Connect(function()
	 
	    TimerDisplay.Text = Status.Value
	 
	end) 
	 
	--pls help me , i would really appreciate that