概要
方法
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):() |
活動
LocalPlayerArrivedFromTeleport(loadingGui: Instance,dataTable: Variant):RBXScriptSignal |
TeleportInitFailed(player: Instance,teleportResult: Enum.TeleportResult,errorMessage: string,placeId: number,teleportOptions: Instance):RBXScriptSignal |
API 參考
屬性
CustomizedTeleportUI
方法
GetArrivingTeleportGui
返回
範例程式碼
處理傳送加載 GUI
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
返回
Variant
範例程式碼
獲取 LocalPlayer 傳送數據
local TeleportService = game:GetService("TeleportService")
local teleportData = TeleportService:GetLocalPlayerTeleportData()
print("本地玩家帶著這個數據到達:", teleportData)GetPlayerPlaceInstanceAsync
參數
返回
範例程式碼
跟隨另一位玩家
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
-- 這個玩家有在關注其他人嗎?如果有,找出他們在哪裡
local success, currentInstance, error, placeId, jobIdOrErr = pcall(function()
return TeleportService:GetPlayerPlaceInstanceAsync(followId)
end)
-- followId 是要檢索的玩家的用戶 ID,以便獲取地點和工作 ID
if success then
-- 根據 jobId 成功後傳送玩家
TeleportService:TeleportToPlaceInstance(placeId, jobIdOrErr, player)
else
-- 根據返回錯誤發出警告
warn(jobIdOrErr)
end
else
warn(("玩家 %d 沒有關注其他玩家!"):format(player.UserId))
end
end)GetTeleportSetting
PromptExperienceDetailsAsync
TeleportService:PromptExperienceDetailsAsync(
範例程式碼
顯示經驗詳情給玩家
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("提示經驗詳情時出錯: " .. tostring(result))
end
if result == Enum.PromptExperienceDetailsResult.PromptClosed then
print("玩家關閉了經驗詳情提示")
elseif result == Enum.PromptExperienceDetailsResult.TeleportAttempted then
print("玩家選擇傳送到該經驗")
endReserveServer
ReserveServerAsync
參數
返回
範例程式碼
傳送服務: 傳送到保留伺服器
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)
-- 您可以為此函數添加額外的參數:spawnName、teleportData 和 customLoadingScreen傳送服務:透過聊天傳送到保留的伺服器
local TeleportService = game:GetService("TeleportService")
local Players = game:GetService("Players")
local DataStoreService = game:GetService("DataStoreService")
local dataStore = DataStoreService:GetGlobalDataStore()
-- 獲取已保存的代碼
local code = dataStore:GetAsync("ReservedServer")
if typeof(code) ~= "string" then -- 沒有保存,創建一個
code = TeleportService:ReserveServerAsync(game.PlaceId)
dataStore:SetAsync("ReservedServer", code)
end
local function joined(player)
player.Chatted:Connect(function(message)
if message == "reserved" then
TeleportService:TeleportToPrivateServer(game.PlaceId, code, { player })
end
end)
end
Players.PlayerAdded:Connect(joined)SetTeleportGui
參數
返回
()
範例程式碼
傳送本地玩家
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 -- 在這裡替換
local loadingGui = ReplicatedStorage:FindFirstChild("LoadingGui")
-- 將此地點的載入 GUI 父化
loadingGui.Parent = playerGui
-- 設定目的地的載入 GUI
TeleportService:SetTeleportGui(loadingGui)
TeleportService:Teleport(PLACE_ID)SetTeleportSetting
Teleport
返回
()
範例程式碼
傳送本地玩家
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 -- 在這裡替換
local loadingGui = ReplicatedStorage:FindFirstChild("LoadingGui")
-- 將此地點的載入 GUI 父化
loadingGui.Parent = playerGui
-- 設定目的地的載入 GUI
TeleportService:SetTeleportGui(loadingGui)
TeleportService:Teleport(PLACE_ID)從伺服器傳送
local Players = game:GetService("Players")
local TeleportService = game:GetService("TeleportService")
local PLACE_ID = 0 -- 在這裡替換
local USER_ID = 1 -- 用玩家的 UserId 替換
local player = Players:GetPlayerByUserId(USER_ID)
TeleportService:Teleport(PLACE_ID, player)TeleportAsync
TeleportPartyAsync
返回
範例程式碼
傳送伺服器中的所有玩家
local Players = game:GetService("Players")
local TeleportService = game:GetService("TeleportService")
local PLACE_ID = 0 -- 替換這裡
local playerList = Players:GetPlayers()
local success, result = pcall(function()
return TeleportService:TeleportPartyAsync(PLACE_ID, playerList)
end)
if success then
local jobId = result
print("玩家們傳送到", jobId)
else
warn(result)
endTeleportToPlaceInstance
返回
()
範例程式碼
跟隨另一位玩家
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
-- 這個玩家有在關注其他人嗎?如果有,找出他們在哪裡
local success, currentInstance, error, placeId, jobIdOrErr = pcall(function()
return TeleportService:GetPlayerPlaceInstanceAsync(followId)
end)
-- followId 是要檢索的玩家的用戶 ID,以便獲取地點和工作 ID
if success then
-- 根據 jobId 成功後傳送玩家
TeleportService:TeleportToPlaceInstance(placeId, jobIdOrErr, player)
else
-- 根據返回錯誤發出警告
warn(jobIdOrErr)
end
else
warn(("玩家 %d 沒有關注其他玩家!"):format(player.UserId))
end
end)TeleportToPrivateServer
返回
()
範例程式碼
傳送服務:透過聊天傳送到保留的伺服器
local TeleportService = game:GetService("TeleportService")
local Players = game:GetService("Players")
local DataStoreService = game:GetService("DataStoreService")
local dataStore = DataStoreService:GetGlobalDataStore()
-- 獲取已保存的代碼
local code = dataStore:GetAsync("ReservedServer")
if typeof(code) ~= "string" then -- 沒有保存,創建一個
code = TeleportService:ReserveServerAsync(game.PlaceId)
dataStore:SetAsync("ReservedServer", code)
end
local function joined(player)
player.Chatted:Connect(function(message)
if message == "reserved" then
TeleportService:TeleportToPrivateServer(game.PlaceId, code, { player })
end
end)
end
Players.PlayerAdded:Connect(joined)傳送服務: 傳送到保留伺服器
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)
-- 您可以為此函數添加額外的參數:spawnName、teleportData 和 customLoadingScreenTeleportToSpawnByName
返回
()
範例程式碼
傳送服務:根據名稱傳送到重生點
-- 獲取傳送服務
local TeleportService = game:GetService("TeleportService")
-- 根據名稱傳送到重生點
TeleportService:TeleportToSpawnByName(1818, "TeleportSpawn")活動
LocalPlayerArrivedFromTeleport
TeleportService.LocalPlayerArrivedFromTeleport(
參數
dataTable:Variant |
TeleportInitFailed
TeleportService.TeleportInitFailed(
player:Instance, teleportResult:Enum.TeleportResult, errorMessage:string, placeId:number, teleportOptions:Instance
參數