表情是可以通过聊天命令(/e 欢呼)访问或访问任何体验右上角的“表情菜单”来访问的表达性角色动画。所有用户都可以访问默认表情,例如 跳舞 , 点 和 欢呼 .额外的虚拟形象动作可以从 市场 购买和装备。
在你的体验中,你可以执行以下表情自定义:
表情菜单
您可以手动打开和关闭用户的表情菜单,自定义菜单以显示特定表情,或完全禁用菜单。
打开和关闭
要手动打开或关闭玩家的表情菜单,请使用真值或假值为 GuiService:SetEmotesMenuOpen() 的 boolean 来调用。
以下代码示例将为用户打开表情菜单:
-- 打开表情菜单local GuiService = game:GetService("GuiService")GuiService:SetEmotesMenuOpen(true)
如果需要检查是否打开了表情菜单,请调用 GuiService:GetEmotesMenuOpen() 。这将返回一个 boolean 指示菜单当前状态。
添加和移除表情
通过设置目录中的表情来自定义表情菜单,然后装备表情到一个 Humanoid 。使用 HumanoidDescription:SetEmotes() 方法设置表情,并使用 HumanoidDescription:SetEquippedEmotes() 将最多 8 个表情装备到表情菜单。
在 文件夹内使用以下代码示例来设置和装备体验中的表情:
local Players = game:GetService("Players")local humanoid = Players.LocalPlayer.Character.Humanoidlocal humanoidDescription = humanoid.HumanoidDescription-- 在表中设置自定义表情local emoteTable = {["Hello"] = {3576686446},["Stadium"] = {3360686498},["Tilt"] = {3360692915},["Shrug"] = {3576968026},["Salute"] = {3360689775},["Point"] = {3576823880}}humanoidDescription:SetEmotes(emoteTable)-- 按特定顺序装备表情符号local equippedEmotes = {"Hello", "Stadium", "Tilt", "Shrug", "Salute", "Point"}humanoidDescription:SetEquippedEmotes(equippedEmotes)
禁用
使用 StarterGui:SetCoreGuiEnabled() 关闭表情菜单。禁用表情菜单不会阻止使用聊天命令进行表情操作。
以下示例代码将禁用表情菜单:
local StarterGui = game:GetService("StarterGui")StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.EmotesMenu, false)
除了禁用菜单外,您还可以通过将 StarterPlayer.UserEmotesEnabled 属性设置为 StarterPlayer > 角色 为 false 来禁用用户拥有的表情加载。这个特定属性只能在工作室中设置,不能通过脚本设置。
播放表情
要手动播放角色在其 HumanoidDescription 中拥有的表情,请调用 Humanoid:PlayEmote() , 传递动作的字符名称。这个调用将返回真值来表示该表情已成功播放,或否则为假值。
使用以下代码示例播放耸耸表情:
local Players = game:GetService("Players")local humanoid = Players.LocalPlayer.Character.Humanoidhumanoid:PlayEmote("Shrug")