Emotes são animações expressivas de personagem que são acessíveis usando comandos de bate-papo ("/e cheer") ou acessando o menu de emotes **** no canto superior direito de qualquer experiência. Todos os usuários têm acesso a emotes padrão, como dance , point e cheer . Emotes de avatar adicionais podem ser comprados e equipados no Marketplace.
Na sua experiência, você pode realizar as seguintes personalizações de emotes:
- Abra e feche o menu de emotes de um usuário programaticamente.
- Adicione ou remova opções de emotes do menu de um usuário.
- Desabilite o acesso ao menu.
- Jogue um emote, visando um personagem de usuário específico.
Menu de Emotes
Você pode abrir e fechar o menu de emotes de um usuário manualmente, personalizar o menu para exibir emotes específicos ou desativar o menu completamente.
Abertura e Fechamento
Para abrir ou fechar manualmente o menu de emotes de um jogador, chame GuiService:SetEmotesMenuOpen() com um valor booleano de verdadeiro ou falso.
O código a seguir abrirá o menu de emotes para o usuário:
-- Abra o menu de emoteslocal GuiService = game:GetService("GuiService")GuiService:SetEmotesMenuOpen(true)
Se você precisar detectar se o menu de emotes está aberto, chame GuiService:GetEmotesMenuOpen() . Isso retorna um booleano indicando o estado atual do menu.
Adicionando e removendo emotes
Personalize o menu de emotes definindo emotes do catálogo e depois equipando emotes para um Humanoid . Defina emotes com o HumanoidDescription:SetEmotes() método e equipe até 8 emotes no menu de emotes usando HumanoidDescription:SetEquippedEmotes() .
Use a seguinte amostra de código em um LocalScript dentro da pasta StarterCharacterScripts para definir e equipar emotes em sua experiência:
local Players = game:GetService("Players")local humanoid = Players.LocalPlayer.Character.Humanoidlocal humanoidDescription = humanoid.HumanoidDescription-- Definir emotes personalizados dentro de uma tabelalocal emoteTable = {["Hello"] = {3576686446},["Stadium"] = {3360686498},["Tilt"] = {3360692915},["Shrug"] = {3576968026},["Salute"] = {3360689775},["Point"] = {3576823880}}humanoidDescription:SetEmotes(emoteTable)-- Equipe emotes em uma ordem específicalocal equippedEmotes = {"Hello", "Stadium", "Tilt", "Shrug", "Salute", "Point"}humanoidDescription:SetEquippedEmotes(equippedEmotes)
Desativando
Desative o menu de emotes com StarterGui:SetCoreGuiEnabled(). Desativar o menu de emotes não impedirá que emotes sejam realizados com um comando de chat.
O código de exemplo a seguir desativará o menu de emotes:
local StarterGui = game:GetService("StarterGui")StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.EmotesMenu, false)
Além de desativar o menu, você pode desativar o carregamento de emotes de propriedade do usuário configurando a propriedade StarterPlayer.UserEmotesEnabled dentro de StarterPlayer > Character para false . Esta propriedade específica só pode ser definida no Studio e não pode ser definida por scripts.
Jogando Emotes
Para reproduzir manualmente uma emoção que um personagem tem em seu HumanoidDescription , chame Humanoid:PlayEmote() , passando o nome da string da emote. Essa chamada retornará true para indicar que a emoção foi reproduzida com sucesso ou false de outra forma.
Use o seguinte código de exemplo para reproduzir o emote Shrug:
local Players = game:GetService("Players")local humanoid = Players.LocalPlayer.Character.Humanoidhumanoid:PlayEmote("Shrug")