local ReplicatedStorage = game:GetService("ReplicatedStorage")
local ServerStorage = game:GetService("ServerStorage")
local MapsFolder = ServerStorage:WaitForChild("Maps")
local Status = ReplicatedStorage:WaitForChild("Status")
local GameLength = 100

while true do
	Status.Value = "Waiting for more people"
	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)]
	
	Status.Value =  ChosenMap.Name.." Chosen"
	local ClonedMap = ChosenMap:Clone()
	ClonedMap.Parent = workspace
	
	local SpawnPoints = ClonedMap:FindFirstChild("SpawnPoints")
	if not SpawnPoints then
	print("SpawnPoints AM!")
	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 fight!"
	wait(2)
	for i = GameLength,0,-1 do
		for i, 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.."people left"
		
		if #plrs == 1 then
			Status.Value = "The Winner is"..plrs[1].Name
			plrs[1].leaderstats.wins.value = plrs[1].leaderstats.wins.Value + reward
			break
		elseif #plrs == 0 then
			Status.Value = "No one has survived and nobody won!"
			break
		elseif i == 0 then
			Status.value = "Time is up and nobody has won!"
			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.Sword:Destroy()
					end
					
			end
			
			player:LoadCharacter()
		end
     ClonedMap:Destroy()

Status.Value = "This game has Ended"
wait (2)
end

1 comment

0

IDK