Hi everyone,

I am making my first game and was following a script on youtube. I believe i have everything right so far, but when my characters teleport to my map, it gets stuck on "Get Ready to Play!" I looked at the code, and after the Status.Value for "Get Ready to Play, I have no idea whats wrong.

The GUI stays on that, and while I get destroy the other player on the test server, the game doesn't register it. Here is my code, Any help is appreciated. Thanks!

local ReplicatedStorage = game:GetService("ReplicatedStorage")

local ServerStorage = game:GetService("ServerStorage")

local MapsFolder = ServerStorage:WaitForChild("Maps")

local Status = ReplicatedStorage:WaitForChild("Status")

local GameLength = 300

local reward = 25

while true do

Status.Value = "Waiting for enough players"

repeat wait(1) until game.Players.NumPlayers >= 2

Status.Value = "Intermission"

wait(10)

local plrs = {}

for i, player in pairs(game.Players:GetPlayers()) do
	if player then
		table.insert(plrs,player)
	end
end

wait(2)

local AvailableMaps = MapsFolder:GetChildren()

local ChosenMap = AvailableMaps[math.random(1,#AvailableMaps)]

Status.Value = ChosenMap.Name.." Chosen"

local ClonedMap = ChosenMap:Clone()
ClonedMap.Parent = workspace

wait(5)

local SpawnPoints = ClonedMap:FindFirstChild("SpawnPoints")

if not SpawnPoints then
	print("SpawnPoints not found!")
end

local AvailableSpawnPoints = SpawnPoints:GetChildren()

for i, player in pairs(plrs) do
	if player then 
		character = player.Character
		
		if character then

			character:FindFirstChild("HumanoidRootPart").CFrame = AvailableSpawnPoints[1].CFrame	
			table.remove(AvailableSpawnPoints,1)

			local Sword = ServerStorage.Sword:Clone()
			Sword.Parent = player.Backpack
			
			local GameTag = Instance.new("BoolValue")
			GameTag.Name = "GameTag"
			GameTag.Parent = player.Character				
				
		else 
							
			if not player then
				table.remove(plrs,i)
				
			end
		end
	end
end



Status.Value = "Get ready to play!"

wait(2)

	for i = GameLength,0,-1 do		
		
	for x, player in pairs(plrs) do
		if player then
			
			character = player.Character
			
			if not character then
				
			else						
				if character.FindFirstChild("GameTag") then
					
					print(player.Name.." is still in the game!")
				else
					
					table.remove(plrs,x)
					print(player.Name.." has been removed!")
				end
			end
		else
			table.remove(plrs,x)
			print(player.Name.." has been removed!")
		end
	end
	
	Status.Value = "There are "..i.." seconds remaining, and "..#plrs.." players left"

	if #plrs == 1 then
		
		Status.Value = "The Winner is "..plrs[1].Name
		plrs[1].leaderstats.Bucks.Value = plrs[1].leaderstats.Bucks.Value + reward
		break
	elseif #plrs == 0 then
		Status.Value = "Nobody Won"
		break
	elseif i == 0 then
		Status.Value = "Time Up!"	
		break						
	end			
	
	wait(1)
end

print ("End of game")

for i, player in pairs(game.Players:GetPlayers()) do
character = player.Character

	if not character then
	
	else
		if character.FindFirstChild("GameTag") then
			character.GameTag:Destroy()
		end
	
		if player.Backpack:FindFirstChild("Sword") then
			player.Backpack.Sword:Destroy()
		end
	
		if character:FindFirstChild("Sword") then
		character.Backpack.Sword:Destroy()
    	end
   end
	
   player:LoadCharacter()
end

ClonedMap:Destroy()

Status.Value = "Game Over"

wait(2)

end