-- Находим обе наши платформы в Workspace
local pad1 = workspace:WaitForChild("StartPad")
local pad2 = workspace:WaitForChild("EndPad")
-- Общая защита от бесконечного телепорта (кулдаун)
local isTeleporting = false
-- Создаем универсальную функцию для перемещения
local function teleportPlayer(hit, destination)
local character = hit.Parent
local rootPart = character:FindFirstChild("HumanoidRootPart")
-- Если это игрок и телепорт сейчас свободен
if rootPart and not isTeleporting then
isTeleporting = true -- Блокируем телепорт
-- Перемещаем игрока к точке назначения
rootPart.CFrame = destination.CFrame + Vector3.new(0, 3, 0)
-- Даем игроку 1.5 секунды, чтобы сойти с платформы
task.wait(1.5)
isTeleporting = false -- Снова включаем телепорт
end
end
-- Связываем платформы с нашей функцией
-- Если игрок касается StartPad, отправляем его на EndPad
pad1.Touched:Connect(function(hit)
teleportPlayer(hit, pad2)
end)
-- Если игрок касается EndPad, отправляем его на StartPad
pad2.Touched:Connect(function(hit)
teleportPlayer(hit, pad1)
end)