Роблокс Студио — мощный инструмент для создания игр, и одной из самых востребованных механик является телепорт игрока. В этой статье вы найдёте готовые скрипты телепортации, разберётесь в их работе и узнаете, как применить их в своей игре.
Зачем нужен телепорт в Роблокс Студио?
Телепорты позволяют:
переносить игрока из одной локации в другую,
создавать секретные комнаты,
перемещать между уровнями,
реализовать быстрые перемещения внутри карты.
Это делает игру более интерактивной и интересной, особенно для новичков в Роблокс Студио.
Как работает телепорт в Роблокс Студио
Телепортация происходит с помощью изменения позиции игрока. Обычно используется метод:
Важно: любые действия с перемещением игрока должны выполняться на сервере — в обычном Script, а не в LocalScript.
Готовые скрипты телепортации
Ниже приведены примеры разных видов телепортов с пояснениями.
1. 📦 Телепорт при касании (Touched)
⚠️ Создай два парта, закрепи их на anchor и поставь в разных местах, первый парт будет телепортировать ко второму, поэтому второй парт назови TeleportPoint, а к первому парту добавь скрипт:
local teleportPart = script.Parent local destination = workspace.TeleportPoint.Position
teleportPart.Touched:Connect(function(hit) local character = hit.Parent local hrp = character:FindFirstChild("HumanoidRootPart") if hrp then hrp.CFrame = CFrame.new(destination) end end)
2. 🖱️ Телепорт по клику (ClickDetector)
⚠️ Создай два парта и поставь в разных местах, первый парт будет телепортировать ко второму, поэтому второй парт назови TeleportTarget, а к первому парту добавь ClickDetector и скрипт:
local clickPart = script.Parent local destination = workspace.TeleportTarget.Position
clickPart.ClickDetector.MouseClick:Connect(function(player) local character = player.Character local hrp = character and character:FindFirstChild("HumanoidRootPart") if hrp then hrp.CFrame = CFrame.new(destination) end end)
3. ⚡ Телепорт по кнопке с ProximityPrompt
⚠️ Создай два парта и поставь в разных местах, первый парт будет телепортировать ко второму, поэтому второй парт назови TeleportHere, а к первому парту добавь ProximityPrompt и скрипт:
local prompt = script.Parent.ProximityPrompt local target = workspace.TeleportHere
prompt.Triggered:Connect(function(player) local char = player.Character local hrp = char and char:FindFirstChild("HumanoidRootPart") if hrp then hrp.CFrame = CFrame.new(target.Position) end end)
Это удобный способ создать телепорт при приближении к объекту.
4. 🚪 Телепорт в другую зону только для одного игрока
⚠️ Создай два парта и поставь в разных местах, первый парт будет телепортировать ко второму, поэтому второй парт назови SafeZone, а к первому парту добавь ProximityPrompt и скрипт:
local prompt = script.Parent.ProximityPrompt local target = workspace.SafeZone.Position local password = "вставь имя игрока"
prompt.Triggered:Connect(function(player) if player.Name == password then local hrp = player.Character and player.Character:FindFirstChild("HumanoidRootPart") if hrp then hrp.CFrame = CFrame.new(target) end else warn("Доступ запрещён!") end end)
Можно заменить проверку имени игрока на наличие предмета в Backpack, уровень, роль и т.д.
5. 🔁 Телепорт с задержкой и эффектом
local part = script.Parent local destination = workspace.TeleEnd.Position
part.Touched:Connect(function(hit) local hrp = hit.Parent:FindFirstChild("HumanoidRootPart") if hrp then wait(1) hrp.CFrame = CFrame.new(destination) end end)
Подходит для создания телепортов с эффектом "загрузки" или "ожидания".
Что нужно помнить при создании телепортов
HumanoidRootPart — основной объект, через который лучше всего телепортировать персонажа.
CFrame — более точный способ, чем .Position, так как сохраняет поворот.
Телепорт должен быть безопасным — не помещай игрока внутрь стен или объектов.
Все скрипты по телепорту нужно размещать в Script, не в LocalScript.
Заключение
Теперь вы знаете, как создать разные типы телепортов в Roblox Studio — по касанию, по клику, с задержкой, с проверкой и через ProximityPrompt. Эти механики помогут сделать вашу игру более интерактивной и профессиональной.