Scripting HelpersARCHIVE
A little piece of Roblox history. Preserved for everyone, one question at a time.Read about the archive →
COMMUNITY QUESTION

The game does not teleport players? (Lobby to map!)

Here is my script, I have done something wrong but I do not know where! The game does not teleport players from the lobby to the map! Here is the script of the game it is a sword fighting game. (Used a video by AlvinBLOX)

-- Define variables

local ReplicatedStorage = game:GetService("ReplicatedStorage")

local ServerStorage = game:GetService("ServerStorage")

local MapsFolder = ServerStorage:WaitForChild("Maps")

local Status = ReplicatedStorage:WaitForChild("Status")

local GameLength = 50

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(10)

local plrs = {}

for i,player in pairs(game.Players:GetPlayers()) do
	if player then
		table.insert(plrs,players) -- 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("SpawnPoints not found!")
end

local AvailableSpawnPoints = SpawnPoints:GetChildren()

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

		if character then
			-- Teleport them
			
			character:FindFistChild("HumanoidRootPart").CFrame = AvailableSpawnPoints.CFrame
		table.remove(AvailableSpawnPoints,1)
			
			-- Give them a 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

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 
			-- Left the game
		else
			if character:FindFirstChild("GameTag") then
				-- They are still alive
				print(player.Name.." is still in the game!")
			else
				-- They are dead
				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 reamining,and "..#plrs.." left"

if #plrs == 1 then
	-- Last person standing
	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.Player:GetPlayer()) do character = player.Character

if not character then
	-- Ignore them
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 = "Game ended"

wait(2)

end

2 answers

you did

character:FindFistChild("HumanoidRootPart").CFrame = AvailableSpawnPoints.CFrame

instead of

character:FindFistChild("HumanoidRootPart").CFrame = AvailableSpawnPoints[1].CFrame

1 comment

0

Thank you soo much it works thank you

Why does it say FindFirstChild not valid or something in my output and it still doesnt teleport me

This discussion is preserved as it was. New answers, comments, and votes are closed.