Advertisement
Bearium

Teleport Manager

Jan 9th, 2025 (edited)
42
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.28 KB | Source Code | 0 0
  1. local RunService = game:GetService("RunService")
  2. local TeleportService = game:GetService("TeleportService")
  3.  
  4. local Teleporter = script.Parent
  5.  
  6. local currentPlayers = Teleporter.CurrentPlayers
  7. local enterPart = Teleporter.Enter
  8. local exitPart = Teleporter.Exit
  9.  
  10. local CurrentTime = 20
  11. local PlaceID = 81956029110985
  12.  
  13. enterPart.BillboardGui.Time.Text = tostring(CurrentTime) .. " seconds"
  14.  
  15. local function Teleport(player)
  16.     if player then
  17.         TeleportService:Teleport(PlaceID, player)
  18.     end
  19. end
  20.  
  21. local function updateTimerDisplay(time)
  22.     enterPart.BillboardGui.Time.Text = tostring(time) .. " seconds"
  23. end
  24.  
  25. while true do
  26.     local allPlayersReady = #currentPlayers:GetChildren()
  27.  
  28.     if allPlayersReady >= 2 and allPlayersReady <= 30 then
  29.         print("Minimum players met. Teleporting in " .. CurrentTime .. " seconds...")
  30.        
  31.         while CurrentTime > 0 do
  32.             allPlayersReady = #currentPlayers:GetChildren()
  33.            
  34.             if allPlayersReady < 2 then
  35.                 print("Player count dropped below 2. Resetting timer.")
  36.                 CurrentTime = 20
  37.                 updateTimerDisplay(CurrentTime)
  38.                 break
  39.             end
  40.            
  41.             CurrentTime -= 1
  42.             updateTimerDisplay(CurrentTime)
  43.             task.wait(1)
  44.         end
  45.  
  46.         if CurrentTime == 0 then
  47.             allPlayersReady = #currentPlayers:GetChildren()
  48.             if allPlayersReady >= 2 and allPlayersReady <= 30 then
  49.                 print("Teleporting players...")
  50.                
  51.                 for _, playerValue in pairs(currentPlayers:GetChildren()) do
  52.                     local player = game.Players:FindFirstChild(playerValue.Value)
  53.                     if player then
  54.                         Teleport(player)
  55.                     end
  56.                 end
  57.                
  58.                 currentPlayers:ClearAllChildren()
  59.                 CurrentTime = 20
  60.                 updateTimerDisplay(CurrentTime)
  61.             else
  62.                 print("Player count changed. Teleporting canceled.")
  63.                 CurrentTime = 20
  64.                 updateTimerDisplay(CurrentTime)
  65.             end
  66.         end
  67.     else
  68.         CurrentTime = 20
  69.         updateTimerDisplay(CurrentTime)
  70.     end
  71.    
  72.     task.wait(1)
  73. end
  74.  
Tags: lua
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement