Emotes sind expressive Charakter-Animationen, die über Chat-Befehle zugänglich sind ("/e cheer") oder durch Zugriff auf das Emotes-Menü oben rechts in jeder Erlebnis.Alle Benutzer haben Zugriff auf Standard-Emotes wie Tanz , Punkt und Jubel .Zusätzliche Avatar-Emotes können vom Marktplatz gekauft und ausgerüstet werden.
In deiner Erlebniskannst du die folgenden Emote-Anpassungen durchführen:
- Öffnen und schließen ein Emotes-Menü eines Benutzers programmatisch.
- Füge oder entferne Emote-Optionen aus dem Menü eines Benutzers hinzu.
- Deaktiviere den Zugriff auf das Menü.
- Spiele ein Emote ab, das einen bestimmten Benutzercharakter anvisiert.
Emotionsmenü
Du kannst das Emote-Menü eines Benutzers manuell öffnen und schließen, das Menü anpassen, um bestimmte Emotes anzuzeigen, oder das Menü vollständig deaktivieren.
Öffnen und schließen
Um das Emote-Menü eines Spieler:inmanuell zu öffnen oder zu schließen, rufe GuiService:SetEmotesMenuOpen() mit einem booleschen Wert von wahr oder falsch auf.
Das folgende Codebeispiel wird das Emotes-Menü für den Benutzer öffnen:
-- Öffne das Emote-Menülocal GuiService = game:GetService("GuiService")GuiService:SetEmotesMenuOpen(true)
Wenn Sie feststellen müssen, ob das Emotes-Menü geöffnet ist, rufen Sie GuiService:GetEmotesMenuOpen() an. Dies gibt einen booleschen Wert zurück, der den aktuellen Zustand des Menüs anzeigt.
Emotes hinzufügen und entfernen
Passe das Emote-Menü an, indem du Emotes aus dem Katalog festlegst und dann Emotes mit einem Humanoid ausrüstest.Setze Emotes mit der Methode HumanoidDescription:SetEmotes() und rüste bis zu 8 Emotes mit dem Emotes-Menü aus, indem du HumanoidDescription:SetEquippedEmotes() verwendest.
Verwende das folgende Codebeispiel in einem LocalScript Ordner innerhalb des StarterCharacterScripts Ordners, um Emotes in deiner Erlebniseinzustellen und auszurüsten:
local Players = game:GetService("Players")local humanoid = Players.LocalPlayer.Character.Humanoidlocal humanoidDescription = humanoid.HumanoidDescription-- Definiere benutzerdefinierte Emotes innerhalb einer Tabellelocal emoteTable = {["Hello"] = {3576686446},["Stadium"] = {3360686498},["Tilt"] = {3360692915},["Shrug"] = {3576968026},["Salute"] = {3360689775},["Point"] = {3576823880}}humanoidDescription:SetEmotes(emoteTable)-- Emotes in bestimmter Reihenfolge ausrüstenlocal equippedEmotes = {"Hello", "Stadium", "Tilt", "Shrug", "Salute", "Point"}humanoidDescription:SetEquippedEmotes(equippedEmotes)
Deaktivieren
Deaktiviere das Emotes-Menü mit StarterGui:SetCoreGuiEnabled(). Das Deaktivieren des Emotes-Menüs verhindert nicht, dass Emotes mit einem Chat-Befehl ausgeführt werden.
Der folgende Beispielcode deaktiviert das Emotes-Menü:
local StarterGui = game:GetService("StarterGui")StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.EmotesMenu, false)
Zusätzlich zur Deaktivierung des Menüs kannst du die Lädtung von benutzereigenen Emotes deaktivieren, indem du die Eigenschaft StarterPlayer.UserEmotesEnabled innerhalb von StarterPlayer > Charakter auf falsch festlegst.Diese spezielle Eigenschaft kann nur im Studio festgelegt werden und kann nicht durch Skripte festgelegt werden.
Spiele Emotes ab
Um ein Emote manuell zu spielen, das ein Charakter in seinem HumanoidDescription hat, rufe Humanoid:PlayEmote() an und übermittle den Namen der Emote-Schnur.Dieser Aufruf gibt wahr zurück, um anzuzeigen, dass das Emote erfolgreich abgespielt wurde oder andernfalls falsch.
Verwende das folgende Codebeispiel, um das Shrug-Emote abzuspielen:
local Players = game:GetService("Players")local humanoid = Players.LocalPlayer.Character.Humanoidhumanoid:PlayEmote("Shrug")