GUIService 允許開發人員控制遊戲手柄導航器正在選擇 GuiObject ,並檢查是否 Roblox 的主菜單目前開啟。
概要
屬性
啟用時,Gamepad 上的 Select 按鈕會自動設定為選擇的對物件。
切換是否使用 CoreGui 的遊戲手柄來導航對象。
用於啟用和關閉預設控制器GUI 導航。
如果 CoreGui 的任何菜單開啟,則返回 true。
將使用者的首選透明度設為數字 0 和 1,這表示他們想要特定 UI 元素的背景是多麼不透明。建議使用為元素的背景透明度的乘數。預設為 1。
如果使用者啟用了減少動作,則返回 true。預設為 false。
設定 GUI 導航器正在專注的 GuiObject (用於遊戲手柄)。
用於確定暢通區域的相對位置和尺寸。
用於啟用和關閉觸摸控制和觸摸控制顯示 UI。預設為真。
方法
關閉檢查選單,如果開啟。
檢查玩家 Emotes 選單是否開啟。
返回是否啟用開發者的 gameplay paused 通知。
返回兩個 Vector2 值代表用戶GUI在畫素中的入射點,從屏幕左上角的畫面右角至屏幕右下角相應位置。
返回是否啟用檢查和購買選單功能。
允許開發人員帶出檢查菜單,顯示此 HumanoidDescription 物件象中列出的資產。
允許檢查選單顯示給用戶顯示 UserId 。
返回 true 如果客戶使用十足界面,這是 Roblox 的 UI 的特殊版本,僅適用於控制器。這是唯一可以確認用戶是否在控制器上的方法。
將 GuiService.SelectedObject 設為指定的實例選擇Parent 的子兒,可能是玩家導覽器或其子。
開啟或關閉玩家表情符號選單。
允許開發人員停用玩家遊戲時內置的通知。
讓開發人員啟用或關閉預設檢查和購買功能。
活動
發生在使用者 關閉 Roblox 核心GUI 逃生選單時。
發生 when the user 開啟 the Roblox coregui escape menu.
屬性
AutoSelectGuiEnabled
啟用時,遊戲控制器上的 Select 按鈕會自動設定為選擇的對物件。若將此關閉,則會意味著在 Class.GuiService.GuiRotationEnabled 啟用時,遊戲導航將仍然運作,但若要啟用 GuiService.GuiNavigationEnabled ,則需要手動設置。
PreferredTextSize
PreferredTransparency
將使用者的預設透明度設為 0 和 1 之間的數字,表示他們想要的 UI 元素背景的程度。預設為 1。
範例程式碼
local DEFAULT_TRANSPARENCY = 0.5
local frame = script.Parent
local function setBackgroundTransparency()
frame.BackgroundTransparency = DEFAULT_TRANSPARENCY * GuiService.PreferredTransparency
end
GuiService:GetPropertyChangedSignal("PreferredTransparency"):Connect(setBackgroundTransparency)
setBackgroundTransparency()
ReducedMotionEnabled
如果使用者啟用了減少動作,則返回 true。預設為 false。
此返回值反映一個設定,可以從用戶側在應用設定或在體驗設定菜單中設置。 使用 減少運動 來指示用戶想要將運動效果和動畫移除或完全移除。 使用 true 來表示用戶想要將運動效果和動畫移除或完全移除。
範例程式碼
local DEFAULT_TRANSPARENCY = 0.5
local frame = script.Parent
local endPosition = UDim2.fromScale(0.5, 0.8)
if GuiService.ReducedMotionEnabled then
frame.Position = endPosition
else
local moveTweenInfo = TweenInfo.new(0.5)
local moveTweenProps = {
Position = endPosition
}
local moveTween = TweenService:Create(frame, slideInTweenInfo, slideInTweenProps)
moveTween:Play()
end
SelectedObject
設定 GuiObject 正在專注於 GUI 導航器 (用於遊戲手柄) 上。如果對象是關閉的,這可能會重置為零。
這個屬性是由 GuiObject.SelectionGained 和 GuiObject.SelectionLost 事件所改變。
如果您想確定這個屬性在選擇獲得和選擇失去事件沒有蹤跡的情況下變更時間,您可以使用 Changed
範例程式碼
local GuiService = game:GetService("GuiService")
local function printChanged(value)
if value == "SelectedObject" then
print("The SelectedObject changed!")
end
end
GuiService.Changed:Connect(printChanged)
TopbarInset
返回 Rect 對象代表在 Roblox 左端控制和裝置安全區邊緣之間的空白區域。
值是動態的,可以預期會隨著使用玩家的 Health 屬性、使用 StarterGui:SetCoreGuiEnabled() 、變更 Roblox UI 控制大小和位置等因素而變化。因此,建議您使用 Class.Object:GetPropertyChanged
範例程式碼
local GuiService = game:GetService("GuiService")
local Players = game:GetService("Players")
local screenGui = Instance.new("ScreenGui")
screenGui.IgnoreGuiInset = true
screenGui.Parent = Players.LocalPlayer.PlayerGui
local frame = Instance.new("Frame")
frame.BackgroundColor3 = Color3.fromRGB(0, 255, 0)
frame.Parent = screenGui
GuiService:GetPropertyChangedSignal("TopbarInset"):Connect(function()
local inset = GuiService.TopbarInset
frame.Size = UDim2.new(0, inset.Width, 0, inset.Height)
frame.Position = UDim2.new(0, inset.Min.X, 0, inset.Min.Y)
end)
方法
CloseInspectMenu
此功能會關閉檢查選單,如果開啟,當從 LocalScript 執行時。
也看:
- 虛擬人偶檢查選單,提供更詳細的說明虛擬人偶檢查和購買功能的工作方式
- GuiService:InspectPlayerFromHumanoidDescription(),允許開發人員顯示這個 HumanoidDescription 物件象上列出的資產。這是特別有用,當玩家的頭像上的 Roblox 平台上穿戴的內容與遊戲中的外觀不同時。
- GuiService:InspectPlayerFromUserId() , 允許檢查選單顯示給用戶顯示 UserId 。這是特別有用,當你想要檢查現在遊戲中不在的玩家
返回
GetEmotesMenuOpen
返回是否返回玩家表情菜單開啟。
開發人員可以通過呼叫 GuiService:SetEmotesMenuOpen() 函數來打開或關閉表情符號選單。
返回
指示是否開啟表情符號選單。
GetGameplayPausedNotificationEnabled
此功能返回是否啟用開發者的 gameplay paused 通知已被禁用。
開發人員可以啟用或啟用通知,呼叫 GuiService:SetGameplayPausedNotificationEnabled() 函數。
也看:
- Workspace.StreamingIntegrityMode 和 Enum.StreamingIntegrityMode 以獲得更多關於遊戲暫停時的詳細資訊。
返回
無論是否啟用 gameplay paused 通知。
GetGuiInset
返回兩個 Vector2 值代表用戶GUI在畫素中的入射點,從屏幕左上角的畫面右角至屏幕右下角相應位置。
這個函數提供的預設值只適用於 ScreenGuis,其 IgnoreGuiInset 屬性設置為 false。
返回
兩個 Vector2 值,描述目前指定的 Gui 插入。
GetInspectMenuEnabled
此功能返回是否啟用檢查和購買選單功能。功能預設啟用,並且可以使用 GuiService:SetInspectMenuEnabled() 函數設置。
也看:
- 虛擬人偶檢查選單,提供更詳細的說明虛擬人偶檢查和購買功能的工作方式
- GuiService:InspectPlayerFromHumanoidDescription(),允許開發人員顯示這個 HumanoidDescription 物件象上列出的資產。這是特別有用,當玩家的頭像上的 Roblox 平台上穿戴的內容與遊戲中的外觀不同時。
- GuiService:InspectPlayerFromUserId() , 允許檢查選單顯示給用戶顯示 UserId 。這是特別有用,當你想要檢查現在遊戲中不在的玩家
返回
啟用檢查選單功能的Boolean。
InspectPlayerFromHumanoidDescription
這個功能允許開發人員帶出檢查菜單,顯示這個 HumanoidDescription 物件象中列出的資產。
這允許玩家在檢查選單中檢查其他玩家時,與顯示在該檢查選單中的玩家進行進一步的自訂。 如果您的遊戲修改玩家穿著的內容,您可以而不是給檢查選擇菜單一個人形描述對象,代表玩家穿著的內容,這些項目將被顯示。您還需要傳一個名稱來代表玩家的名稱,以便在檢查選擇菜
也看:
- 虛擬人偶檢查選單,提供更詳細的說明虛擬人偶檢查和購買功能的工作方式
- GuiService:SetInspectMenuEnabled(),允許開發人員啟用或關閉預設檢查和購買功能
- GuiService:InspectPlayerFromUserId() 允許檢查選單顯示指定的 UserId 。這對於要檢查現有遊戲中不在當前遊戲中的玩家非常有用。
參數
一個 HumanoidDescription 對象,內含顯示在檢查菜單中的資產。
玩家被檢查的名稱,會在檢查菜單中顯示。
返回
範例程式碼
local GuiService = game:GetService("GuiService")
local humanoidDescription = Instance.new("HumanoidDescription")
humanoidDescription.HatAccessory = "3339374070"
humanoidDescription.BackAccessory = "3339363671"
GuiService:InspectPlayerFromHumanoidDescription(humanoidDescription, "MyPlayer")
InspectPlayerFromUserId
這個函數允許檢查選單顯示給用戶,顯示他們擁有指定的 UserId 。這是特別有用,當你想檢查現在遊戲中不在的玩家。
這表示與指定使用者個人個人檔案料頁面上的「目前穿戴」標籤相同的資訊。
也看:
- 虛擬人偶檢查選單,提供更詳細的說明虛擬人偶檢查和購買功能的工作方式
- GuiService:SetInspectMenuEnabled(),允許開發人員啟用或關閉預設檢查和購買功能。這對於戴在玩家的頭盔上的 Roblox 平台上穿戴的人來說特別有用外觀
- GuiService:InspectPlayerFromHumanoidDescription(),允許開發人員顯示這個 HumanoidDescription 對象中列出的資物件
參數
返回
範例程式碼
local GuiService = game:GetService("GuiService")
GuiService:InspectPlayerFromUserId(772462)
Select
當選擇子選擇器在 PlayerGui 或 PlayerGui 的子孫上呼叫時,引擎會搜尋所有可用的選擇可視和在屏幕上的 GuiObjects,這些 GuiObjets 是選擇Parent的子孫,並將 GuiService.SelectedObject 設置為 GuiObjets 中最小的 GuiService.SelectionOrder。
參數
搜尋其子的選擇的父親。
返回
範例程式碼
local DEFAULT_TRANSPARENCY = 0.5
local frame = script.Parent
local function setBackgroundTransparency()
frame.BackgroundTransparency = DEFAULT_TRANSPARENCY * GuiService.PreferredTransparency
end
GuiService:GetPropertyChangedSignal("PreferredTransparency"):Connect(setBackgroundTransparency)
setBackgroundTransparency()
SetGameplayPausedNotificationEnabled
此方法允許開發人員停用玩家的遊戲時通知,並且在玩家的遊戲中添加自己的 UI 如果他們想要自訂。
開發人員可以檢查是否啟用通知,並且使用 GuiService:GetGameplayPausedNotificationEnabled() 函數。
也看:
- Workspace.StreamingIntegrityMode 和 Enum.StreamingIntegrityMode 以獲得更多關於遊戲暫停時的詳細資訊。
參數
是否啟用或不啟用內置通知GUI。
返回
SetInspectMenuEnabled
這個功能允許開發人員啟用或關閉預設檢查和購買功能。這很有用,當您想要在您的遊戲中禁用功能,或在特定部分的遊戲中(例如切換場景)。功能是預設啟用的。
下面的代碼示範了如何為您的遊戲禁用檢查選單:
local GuiService = game:GetService("GuiService")GuiService:SetInspectMenuEnabled(false)
也看:
- 虛擬人偶檢查選單,提供更詳細的說明虛擬人偶檢查和購買功能的工作方式
- GuiService:InspectPlayerFromHumanoidDescription(),允許開發人員顯示這個 HumanoidDescription 物件象上列出的資產。這是特別有用,當玩家的頭像上的 Roblox 平台上穿戴的內容與遊戲中的外觀不同時。
- GuiService:InspectPlayerFromUserId() , 允許檢查選單顯示給用戶顯示 UserId 。這是特別有用,當你想要檢查現在遊戲中不在的玩家
參數
啟用或關閉檢查選單功能的Boolean。
返回
活動
MenuClosed
發生在使用者 關閉 Roblox 核心GUI 逃生選單時。
MenuOpened
發生 when the user 開啟 the Roblox coregui escape menu.