Classe do mecanismo
TeleportService
*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.
Resumo
Propriedades
Métodos
GetLocalPlayerTeleportData():Variant |
GetPlayerPlaceInstanceAsync(userId: User):Tuple |
GetTeleportSetting(setting: string):Variant |
PromptExperienceDetailsAsync(player: Player,universeId: number):Enum.PromptExperienceDetailsResult |
ReserveServer(placeId: number):Tuple |
ReserveServerAsync(placeId: number):Tuple |
SetTeleportGui(gui: Instance):() |
SetTeleportSetting(setting: string,value: Variant):() |
TeleportAsync(placeId: number,players: Instances,teleportOptions: Instance):Instance |
TeleportPartyAsync(placeId: number,players: Instances,teleportData: Variant,customLoadingScreen: Instance):string |
TeleportToPrivateServer(placeId: number,reservedServerAccessCode: string,players: Instances,spawnName: string,teleportData: Variant,customLoadingScreen: Instance):() |
TeleportToSpawnByName(placeId: number,spawnName: string,player: Instance,teleportData: Variant,customLoadingScreen: Instance):() |
Eventos
LocalPlayerArrivedFromTeleport(loadingGui: Instance,dataTable: Variant):RBXScriptSignal |
TeleportInitFailed(player: Instance,teleportResult: Enum.TeleportResult,errorMessage: string,placeId: number,teleportOptions: Instance):RBXScriptSignal |
Referência API
Propriedades
CustomizedTeleportUI
Métodos
GetArrivingTeleportGui
Devolução
Amostras de código
Manipulando uma GUI de Carregamento de Teletransporte
local TeleportService = game:GetService("TeleportService")
local Players = game:GetService("Players")
local ReplicatedFirst = game:GetService("ReplicatedFirst")
local customLoadingScreen = TeleportService:GetArrivingTeleportGui()
if customLoadingScreen then
local playerGui = Players.LocalPlayer:WaitForChild("PlayerGui")
ReplicatedFirst:RemoveDefaultLoadingScreen()
customLoadingScreen.Parent = playerGui
task.wait(5)
customLoadingScreen:Destroy()
endGetLocalPlayerTeleportData
TeleportService:GetLocalPlayerTeleportData():Variant
Devolução
Variant
Amostras de código
Obtendo Dados de Teletransporte do LocalPlayer
local TeleportService = game:GetService("TeleportService")
local teleportData = TeleportService:GetLocalPlayerTeleportData()
print("O jogador local chegou com estes dados:", teleportData)GetPlayerPlaceInstanceAsync
Parâmetros
Devolução
Amostras de código
Seguindo Outro Jogador
local TeleportService = game:GetService("TeleportService")
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
local followId = player.FollowUserId
if followId and followId ~= 0 then
-- Este jogador está seguindo alguém? Se sim, descubra onde eles estão
local success, currentInstance, error, placeId, jobIdOrErr = pcall(function()
return TeleportService:GetPlayerPlaceInstanceAsync(followId)
end)
-- followId é o ID do usuário do jogador que você deseja recuperar o local e o ID do trabalho
if success then
-- Teleporta o jogador com sucesso com base no jobId
TeleportService:TeleportToPlaceInstance(placeId, jobIdOrErr, player)
else
-- Exibe um aviso com base no erro retornado
warn(jobIdOrErr)
end
else
warn(("O jogador %d não está seguindo outro jogador!"):format(player.UserId))
end
end)GetTeleportSetting
PromptExperienceDetailsAsync
TeleportService:PromptExperienceDetailsAsync(
Devolução
Amostras de código
Mostrar Detalhes da Experiência ao Jogador
local TeleportService = game:GetService("TeleportService")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local success, result = pcall(function()
TeleportService:PromptExperienceDetailsAsync(player, 8357232245)
end)
if not success then
warn("Erro ao solicitar detalhes da experiência: " .. tostring(result))
end
if result == Enum.PromptExperienceDetailsResult.PromptClosed then
print("O jogador fechou o prompt de detalhes da experiência")
elseif result == Enum.PromptExperienceDetailsResult.TeleportAttempted then
print("O jogador escolheu teletransportar-se para a experiência")
endReserveServer
ReserveServerAsync
Parâmetros
Devolução
Amostras de código
TeleportService: Teleportar para um Servidor Reservado
local TeleportService = game:GetService("TeleportService")
local Players = game:GetService("Players")
local code = TeleportService:ReserveServerAsync(game.PlaceId)
local players = Players:GetPlayers()
TeleportService:TeleportToPrivateServer(game.PlaceId, code, players)
-- Você pode adicionar argumentos extras a esta função: spawnName, teleportData e customLoadingScreenTeleportService: Teleportar para um Servidor Reservado via Chat
local TeleportService = game:GetService("TeleportService")
local Players = game:GetService("Players")
local DataStoreService = game:GetService("DataStoreService")
local dataStore = DataStoreService:GetGlobalDataStore()
-- Obter o código salvo
local code = dataStore:GetAsync("ReservedServer")
if typeof(code) ~= "string" then -- Nenhum salvo, criar um
code = TeleportService:ReserveServerAsync(game.PlaceId)
dataStore:SetAsync("ReservedServer", code)
end
local function joined(player)
player.Chatted:Connect(function(message)
if message == "reservado" then
TeleportService:TeleportToPrivateServer(game.PlaceId, code, { player })
end
end)
end
Players.PlayerAdded:Connect(joined)SetTeleportGui
Parâmetros
Devolução
()
Amostras de código
Teleportando o jogador local
local TeleportService = game:GetService("TeleportService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")
local playerGui = Players.LocalPlayer:WaitForChild("PlayerGui")
local PLACE_ID = 0 -- substitua aqui
local loadingGui = ReplicatedStorage:FindFirstChild("LoadingGui")
-- parentar a gui de carregamento para este lugar
loadingGui.Parent = playerGui
-- definir a gui de carregamento para o lugar de destino
TeleportService:SetTeleportGui(loadingGui)
TeleportService:Teleport(PLACE_ID)SetTeleportSetting
Teleport
TeleportAsync
TeleportPartyAsync
TeleportToPlaceInstance
TeleportToPrivateServer
TeleportToSpawnByName
Eventos
LocalPlayerArrivedFromTeleport
TeleportService.LocalPlayerArrivedFromTeleport(
Parâmetros
dataTable:Variant |
TeleportInitFailed
TeleportService.TeleportInitFailed(
player:Instance, teleportResult:Enum.TeleportResult, errorMessage:string, placeId:number, teleportOptions:Instance
Parâmetros