WARNING: Heads up! This script has not been verified by ScriptBlox. Use at your own risk!
]]
_G.stopTeleporting = false -- turn this to true and execute again if u want it to stop !!!
local function findClosestChild(children, player)
if not children or #children == 0 then
return
end
local closestChild = nil
local shortestDistance = math.huge
for _, v in ipairs(children) do
if v.Name == "Highlight" or v.Transparency == 0.75 then
continue
end
local distance = (v.Position - player.Character.HumanoidRootPart.Position).Magnitude
if distance < shortestDistance then
shortestDistance = distance
closestChild = v
end
end
return closestChild
end
local children = game:GetService("Workspace")["__THINGS"].Presents:GetChildren()
local player = game.Players.LocalPlayer
local lastTeleportedChild = nil
while not _G.stopTeleporting do
local closestChild = findClosestChild(children, player)
if not closestChild then
print("No closest child found.")
break
end
if lastTeleportedChild == closestChild then
print("Already teleported to this child.")
continue
end
lastTeleportedChild = closestChild
local startTime = os.time()
while os.difftime(os.time(), startTime) < 5 do
if not player.Character or not player.Character.HumanoidRootPart then
print("Player or HumanoidRootPart not found.")
break
end
player.Character.HumanoidRootPart.CFrame = CFrame.new(closestChild.Position)
task.wait()
end
local childFound = false
for i, child in ipairs(children) do
if child == closestChild then
table.remove(children, i)
childFound = true
break
end
end
if not childFound then
print("Child not found in th