GuiService 允许开发人员控制游戏手柄导航器正在选择 GuiObject ,以及检查 Roblox 主菜单是否打开。
概要
属性
激活时,游戏手柄上的Select按钮或Backslash将自动设置一个图形用户界面为选定对象。
切换是否使用 Gamepad 导航 CoreGui 中的对象。
用于启用和禁用默认控制器GUI导航。
如果 CoreGui 的任意菜单打开,返回 true。
作为 0 和 1 之间的数字获得用户的首选透明度,这表示他们想要特定 UI 元素的背景透明度。 建议的使用是作为元素的背景透明度的乘数。 默认为 1。
如果用户启用了减少移动,返回 true 。默认为 false。
将 GuiObject 设置为 GUI 导航器 (用于游戏手柄) 上的焦点。
用于确定顶部栏空间中的空白区域的绝对大小和位置。
用于启用和禁用触摸控制和触摸控制显示 UI。默认为 true。
方法
关闭检查菜单,如果开启。
检查玩家表情菜单是否打开。
返回是否禁用开发者的gameplay paused通知。
从屏幕左上角的角度返回两个 Vector2 值,分别代表屏幕左上角的用户GUI插入在像素中,从屏幕右上角的角度返回屏幕左上角的用户GUI插入在像素中。
返回是否启用检查和购买菜单功能。
允许开发人员打开显示在此 HumanoidDescription 对象列表的资产列表菜单。
允许检查菜单出现,显示用户拥有给定的 UserId 。
返回 true 如果客户使用了“十英尺”界面,这是 Roblox 的 UI 的特殊版本,仅于控制器上使用。 这是唯一可以确保用户在控制器上或不在的方法。
将 GuiService.SelectedObject 设置为 PlayerGui 或其子代码。
打开或关闭玩家表情菜单。
允许开发人员在玩家游戏暂停时禁用内置通知。
允许开发人员启用或禁用默认的检查和购买功能。
活动
当用户 关闭 Roblox 核心GUI逃生菜单时,它会发生。
当用户 打开 Roblox 核心图形用户界面逃生菜单时,火焰会发生。
属性
AutoSelectGuiEnabled
激活时,游戏手柄上的 Select 按钮或 Backslash 将自动将 GUI 设置为选定的对象。关闭此选项会使 GUI 导航仍然工作,但您必须手动设置 GuiService.GuiNavigationEnabled 才能启用 GUI 导航。
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 事件改变的。
如果您想确定在选择中获得和选择丢失事件的全部GUI元素的选择时,您可以使用 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 左侧控制和设备安全区边缘之间的空白区域。
值是动态的,可以预期会根据 UI 控件的可见性(例如更改本地玩家的 Health 属性、使用 StarterGui:SetCoreGuiEnabled() 和/或其他变更来变更。 因此,您建议使用 Object:GetPropertyChangedSignal()
代码示例
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
此函数关闭 Inspect 菜单,如果打开,运行从 LocalScript 。
还请参阅:
- 虚拟形象检查菜单,提供一种更详细的解释检查和购买功能的工作方式
- GuiService:InspectPlayerFromHumanoidDescription(),允许开发人员在此 HumanoidDescription 对象上显示列出资产的菜单。这是特别有用,当玩家在 Roblox 平台上穿戴的头像上衣不是与其游戏内外观相同时。
- GuiService:InspectPlayerFromUserId() ,允许检查菜单显示用户拥有给定的 UserId 。 这是特别有用的,当您想要检查现在游戏中不在游戏中的玩家
返回
GetEmotesMenuOpen
返回一个Boolean,表示是否打开玩家表情菜单。
开发人员可以通过调用 GuiService:SetEmotesMenuOpen() 函数来打开或关闭表情菜单。
返回
指示是否打开表情菜单。
GetGameplayPausedNotificationEnabled
此函数返回是否禁用开发者的 gameplay paused 通知。
开发人员可以通过调用 GuiService:SetGameplayPausedNotificationEnabled() 函数来启用或禁用通知。
还请参阅:
- Workspace.StreamingIntegrityMode 和 Enum.StreamingIntegrityMode 了解更多游戏暂停时的细节。
返回
无论是否禁用了 gameplay paused 通知。
GetGuiInset
从屏幕左上角的角度返回两个 Vector2 值,分别代表屏幕左上角的用户GUI插入在像素中,从屏幕右上角的角度返回屏幕左上角的用户GUI插入在像素中。
这个函数提供的插入值仅对 ScreenGuis 有效,其 IgnoreGuiInset 属性设置为 false。
返回
描述当前指定 Gui 插入的两个 Vector2 值的示例。
GetInspectMenuEnabled
此函数返回是否启用检查和购买菜单功能。该功能默认为“GuiService:SetInspectMenuEnabled()”,可通过使用“Class.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 对象中列出的资产显示在 Inspect 菜单中
参数
返回
代码示例
local GuiService = game:GetService("GuiService")
GuiService:InspectPlayerFromUserId(772462)
IsTenFootInterface
返回 true 如果客户使用了“十英尺”界面,这是 Roblox 的 UI 的特殊版本,仅于控制器上使用。 这是唯一可以确保用户在控制器上或不在的方法。
返回
Select
当 Select 调用一个实例选择父亲是 PlayerGui 或 PlayerGui 的后代,引擎会搜索所有可用的、可见的和在屏幕上的 GuiObjects ,它们是选择父亲的后代,并将 GuiService.SelectedObject 设置为最小 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 了解更多游戏暂停时的细节。
参数
是否启用内置通知图形用户界面。
返回
SetInspectMenuEnabled
此功能允许开发人员启用或禁用默认的检查和购买功能。 这是有助于您想要在您的游戏中禁用该功能的时候的。 该功能默认启用。
下面的代码示例显示了如何为您的游戏禁用检查菜单:
local GuiService = game:GetService("GuiService")GuiService:SetInspectMenuEnabled(false)
还请参阅:
- 虚拟形象检查菜单,提供一种更详细的解释检查和购买功能的工作方式
- GuiService:InspectPlayerFromHumanoidDescription(),允许开发人员在此 HumanoidDescription 对象上显示列出资产的菜单。这是特别有用,当玩家在 Roblox 平台上穿戴的头像上衣不是与其游戏内外观相同时。
- GuiService:InspectPlayerFromUserId() ,允许检查菜单显示用户拥有给定的 UserId 。 这是特别有用的,当您想要检查现在游戏中不在游戏中的玩家
参数
一个指示是否启用或禁用检查菜单精选能的Boolean。
返回
活动
MenuClosed
当用户 关闭 Roblox 核心GUI逃生菜单时,它会发生。
MenuOpened
当用户 打开 Roblox 核心图形用户界面逃生菜单时,火焰会发生。