Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local ReplicatedStorage = game:GetService("ReplicatedStorage")
- local ServerStorage = game:GetService("ServerStorage")
- local MapsFolder = ServerStorage:WaitForChild("Maps")
- local Status = ReplicatedStorage:WaitForChild("Status")
- local GameLength = 60
- local reward = 25
- --Game Loop
- while true do
- Status.Value = "Waiting for enough players"
- repeat wait (1) until game.Players.NumPlayers >= 2
- Status.Value = "Intermission"
- wait(5)
- local plrs = {}
- for i, player in pairs(game.Players:GetPlayers()) do
- if player then
- table.insert(plrs,player)--Add each Player into plrs table
- 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
- --Teleport Players to the Map
- local SpawnPoints = ClonedMap:FindFirstChild ("SpawnPoints")
- if not SpawnPoints then
- print("SpawnPoint Not Found")
- end
- local AvailableSpawnPoints = SpawnPoints:GetChildren()
- for i, player in pairs(plrs)do
- if player then
- character = player.Character
- if character then
- --teleport them
- character:FindFirstChild("HumanoidRootPart").CFrame = AvailableSpawnPoints[1].CFrame
- table.remove(AvailableSpawnPoints,1)
- --Give them sword
- local Sword = ServerStorage.Sword:Clone()
- Sword.Parent = player.Backpack
- local Gametag = Instance.new("BoolValue")
- Gametag.Name = "GameTag"
- Gametag.Parent = player.Character
- else
- --there is no character
- if not player then
- table.remove(plrs,i)
- end
- end
- end
- end
- wait (2)
- Status.Value = "Get Ready To Play"
- for i = GameLength,0,-1 do
- for x, player in pairs(plrs) do
- if player then
- character = player.Character
- if not character then
- --left game
- else
- if character:FindFirstChild ("GameTag")then
- --they are alive
- print (player.Name.." is still the game!")
- else
- --they are dead
- table.remove(plrs,x)
- end
- end
- 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
- --last man standing
- Status.Value = "The Winner is "..plrs[1].Name
- plrs[1].leaderstats.chips.Value = plrs[1].leaderstats.chips.Value + reward
- break
- elseif #plrs == 0 then
- Status.Value = "Nobody Won"
- break
- elseif i == 0 then
- Status.Value = "Times Up"
- end
- wait(1)
- end
- print ("End Of Game")
- for i, player in pairs(game.Players:GetPlayers())do
- character = player.Character
- if not character then
- --Ignore them
- else
- if character:FindFirstChild("GameTag") then
- character.GameTag:Destroy()
- end
- if character.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 = "Game Ended"
- wait(2)
- end
Advertisement
Add Comment
Please, Sign In to add comment