GuiService

顯示已棄用項目

*此內容是使用 AI(Beta 測試版)翻譯,可能含有錯誤。若要以英文檢視此頁面,請按一下這裡

無法建立
服務
未複製

GUIService 允許開發人員控制遊戲手柄導航器正在選擇 GuiObject ,並檢查是否 Roblox 的主菜單目前開啟。

概要

屬性

方法

活動

屬性

AutoSelectGuiEnabled

平行讀取

啟用時,遊戲控制器上的 Select 按鈕會自動設定為選擇的對物件。若將此關閉,則會意味著在 Class.GuiService.GuiRotationEnabled 啟用時,遊戲導航將仍然運作,但若要啟用 GuiService.GuiNavigationEnabled ,則需要手動設置。

CoreGuiNavigationEnabled

隱藏
未複製
平行讀取

切換是否使用 CoreGui 的遊戲手柄來導航對象。

GuiNavigationEnabled

平行讀取

用於啟用和關閉預設控制器GUI 導航。

唯讀
未複製
平行讀取

如果 CoreGui 的任何選單開啟,則返回 true。

PreferredTextSize

唯讀
未複製
平行讀取

PreferredTransparency

隱藏
唯讀
未複製
平行讀取

將使用者的預設透明度設為 0 和 1 之間的數字,表示他們想要的 UI 元素背景的程度。預設為 1。

範例程式碼

Use Preferred Transparency

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 來表示用戶想要將運動效果和動畫移除或完全移除。

範例程式碼

Use Reduced Motion

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.SelectionGainedGuiObject.SelectionLost 事件所改變。

如果您想確定這個屬性在選擇獲得和選擇失去事件沒有蹤跡的情況下變更時間,您可以使用 Changed

範例程式碼

Printing When Gamepad Selection Changes

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

範例程式碼

Responsive Frame Within Available Top Bar Space

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)

TouchControlsEnabled

平行讀取

用於啟用和關閉觸摸控制和觸摸控制顯示 UI。預設為真。

方法

CloseInspectMenu

void

此功能會關閉檢查選單,如果開啟,當從 LocalScript 執行時。

也看:


返回

void

DismissNotification

參數

notificationId: string

返回

GetEmotesMenuOpen

返回是否返回玩家表情菜單開啟。

開發人員可以通過呼叫 GuiService:SetEmotesMenuOpen() 函數來打開或關閉表情符號選單。


返回

指示是否開啟表情符號選單。

GetGameplayPausedNotificationEnabled

此功能返回是否啟用開發者的 gameplay paused 通知已被禁用。

開發人員可以啟用或啟用通知,呼叫 GuiService:SetGameplayPausedNotificationEnabled() 函數。

也看:


返回

無論是否啟用 gameplay paused 通知。

GetGuiInset

返回兩個 Vector2 值代表用戶GUI在畫素中的入射點,從屏幕左上角的畫面右角至屏幕右下角相應位置。

這個函數提供的預設值只適用於 ScreenGuis,其 IgnoreGuiInset 屬性設置為 false。


返回

兩個 Vector2 值,描述目前指定的 Gui 插入。

GetInspectMenuEnabled

此功能返回是否啟用檢查和購買選單功能。功能預設啟用,並且可以使用 GuiService:SetInspectMenuEnabled() 函數設置。

也看:


返回

啟用檢查選單功能的Boolean。

InspectPlayerFromHumanoidDescription

void

這個功能允許開發人員帶出檢查菜單,顯示這個 HumanoidDescription 物件象中列出的資產。

這允許玩家在檢查選單中檢查其他玩家時,與顯示在該檢查選單中的玩家進行進一步的自訂。 如果您的遊戲修改玩家穿著的內容,您可以而不是給檢查選擇菜單一個人形描述對象,代表玩家穿著的內容,這些項目將被顯示。您還需要傳一個名稱來代表玩家的名稱,以便在檢查選擇菜

也看:

參數

humanoidDescription: Instance

一個 HumanoidDescription 對象,內含顯示在檢查菜單中的資產。

name: string

玩家被檢查的名稱,會在檢查菜單中顯示。


返回

void

範例程式碼

Opening an Inspect Menu with a HumanoidDescription

local GuiService = game:GetService("GuiService")
local humanoidDescription = Instance.new("HumanoidDescription")
humanoidDescription.HatAccessory = "3339374070"
humanoidDescription.BackAccessory = "3339363671"
GuiService:InspectPlayerFromHumanoidDescription(humanoidDescription, "MyPlayer")

InspectPlayerFromUserId

void

這個函數允許檢查選單顯示給用戶,顯示他們擁有指定的 UserId 。這是特別有用,當你想檢查現在遊戲中不在的玩家。

這表示與指定使用者個人個人檔案料頁面上的「目前穿戴」標籤相同的資訊。

也看:

參數

userId: number

玩家的 UserId 以便檢查。


返回

void

範例程式碼

Opening the Inspect Menu for a UserId

local GuiService = game:GetService("GuiService")
GuiService:InspectPlayerFromUserId(772462)

IsTenFootInterface

返回 true 如果客戶使用十足界面,這是 Roblox 的 UI 的特殊版本,僅適用於控制器。這是唯一可以確認用戶是否在控制器上的方法。


返回

Select

void

當選擇子選擇器在 PlayerGui 或 PlayerGui 的子孫上呼叫時,引擎會搜尋所有可用的選擇可視和在屏幕上的 GuiObjects,這些 GuiObjets 是選擇Parent的子孫,並將 GuiService.SelectedObject 設置為 GuiObjets 中最小的 GuiService.SelectionOrder

參數

selectionParent: Instance

搜尋其子的選擇的父親。


返回

void

範例程式碼

Use Preferred Transparency

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()

SendNotification

參數

notificationInfo: Dictionary

返回

SetEmotesMenuOpen

void

開啟或關閉玩家表情符號選單。

參數

isOpen: bool

返回

void

SetGameplayPausedNotificationEnabled

void

此方法允許開發人員停用玩家的遊戲時通知,並且在玩家的遊戲中添加自己的 UI 如果他們想要自訂。

開發人員可以檢查是否啟用通知,並且使用 GuiService:GetGameplayPausedNotificationEnabled() 函數。

也看:

參數

enabled: bool

是否啟用或不啟用內置通知GUI。


返回

void

SetInspectMenuEnabled

void

這個功能允許開發人員啟用或關閉預設檢查和購買功能。這很有用,當您想要在您的遊戲中禁用功能,或在特定部分的遊戲中(例如切換場景)。功能是預設啟用的。

下面的代碼示範了如何為您的遊戲禁用檢查選單:


local GuiService = game:GetService("GuiService")
GuiService:SetInspectMenuEnabled(false)

也看:

參數

enabled: bool

啟用或關閉檢查選單功能的Boolean。


返回

void

活動

發生在使用者 關閉 Roblox 核心GUI 逃生選單時。


發生 when the user 開啟 the Roblox coregui escape menu.