← Все вопросы
Как сделать телепорт игрока на другую деталь в Roblox?
6
Хочу телепорт: игрок заходит в портал и оказывается в другой части карты. Как переместить персонажа из кода на нужную позицию?
2 ответа
9
✓ Принятый ответ — помог автору
Телепорт = перемещение HumanoidRootPart персонажа в нужную точку. Удобнее всего телепортировать на позицию другой детали:
local portal = workspace.Portal
local destination = workspace.Destination -- куда телепортируем
portal.Touched:Connect(function(hit)
local char = hit.Parent
local root = char:FindFirstChild("HumanoidRootPart")
if root then
root.CFrame = destination.CFrame + Vector3.new(0, 3, 0)
end
end)
Ключевое:
- Двигаем
HumanoidRootPart— это "корень" персонажа. - Используем
CFrame, а неPosition(CFrame хранит и положение, и поворот, телепорт получается надёжнее). + Vector3.new(0, 3, 0)— приподнять чуть выше, чтобы не застрять в полу.
3
Чтобы игрок не телепортировался бесконечно туда-обратно (портал у точки прибытия снова его ловит), ставь точку назначения подальше или добавь короткий кулдаун через task.wait() и флаг.
Ваш ответ
Войдите, чтобы ответить на вопрос.