I want each player to be teleported to a different teleporter.
local plrs = game.Players:GetChildren() wait(70) local teleports = game.Workspace.Teleports:GetChildren() for i,v in pairs(game.Players:GetPlayers()) do local char = v.Character for i,v in pairs(game.Workspace.Teleports:GetChildren()) do
1 | char:FindFirstChild( "HumanoidRootPart" ).Position = v.Position |
end end
It's because you're setting the player's position to the same teleporter at the same time. To make it so it's a different teleporter you would make it so it teleports the player to a teleporter using the index assuming theres the same amount of teleporters as players.
1 | local plrs = game.Players:GetChildren() |
2 | wait( 70 ) |
3 | local teleports = game.Workspace.Teleports:GetChildren() |
4 |
5 | for i,v in pairs (game.Players:GetPlayers()) do |
6 | local char = v.Character |
7 | char:FindFirstChild( "HumanoidRootPart" ).Position = teleports [ i ] .Position |
8 | end |
1 | plrs = game.Players:GetChildren() |
2 | wait( 70 ) |
3 | tps = workspace.Teleports:GetChildren() |
4 | for i = 1 ,#plrs do |
5 | for a = 1 ,#tps do |
6 | char = plrs [ i ] .Character |
7 | char:MoveTo(tps [ i ] .Teleport.CFrame.Position) |
8 | end |
9 | end |
You can use :MoveTo() to teleport Model.
I don't know why you put line 1 and line 3
1 | plrs = game.Players:GetChildren() |
2 | local teleports = game.Workspace.Teleports:GetChildren() |
that doesn't do anything.
Here is script
1 | wait( 70 ) |
2 |
3 | for i,plrs in pairs (game.Players:GetPlayers()) do |
4 | local char = plr.Character |
5 | for i,teleports in pairs (workspace.Teleports:GetChildren()) do |
6 | char:MoveTo(teleports.Position) |
7 | end |
8 | end |