TextChatService
*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.
Eine Dienstleistung, die In-Experience-Text-Chat-Handling, einschließlich der Verwaltung von Kanälen, Dekoration von Nachrichten, Filtern von Text, Erstellung von Befehlen und Entwicklung benutzerdefinierter Chat-Schnittstellen.
Um mehr zu erfahren, siehe In-Experience Text-Chat.
Zusammenfassung
Eigenschaften
Bestimmt, ob TextChatService vollständig aktiviert werden soll oder auf das Legacy-Chat-System zurückgegriffen werden soll.
Bestimmt, ob TextChatService standardmäßige TextChatCommands erzeugen sollte.
Bestimmt, ob TextChatService Standard TextChannels erstellen sollte.
Methoden
Zeigt eine Chat-Blase über dem angezeigten Teil oder dem Charakter des Spielers.
Bestimmt, ob ein Benutzer die Erlaubnis hat, direkt mit anderen Benutzern in Erlebnissen zu chatten, basierend auf seinen elterlichen Kontroll-Einstellungen.
Ereignisse
Feuert ab, wenn TextChatService:DisplayBubble() aufgerufen wird.
Feuert, wenn TextChannel:DisplaySystemMessage() auf dem Client aufgerufen wird, oder wenn der Client eine gültige TextChannel:SendAsync() Antwort vom Server erhält.
Feuert, wenn TextChannel:SendAsync() vom Senden-Client aufgerufen wird.
Callbacks
Eigenschaften
ChatTranslationEnabled
ChatVersion
Bestimmt, ob TextChatService vollständig aktiviert werden soll oder auf das Legacy-Chat-System zurückgegriffen werden soll. Wenn Sie diese Eigenschaft auf Enum.ChatVersion.LegacyChatService setzen, deaktivieren Sie effektiv TextChatService.
CreateDefaultCommands
Bestimmt, ob TextChatService standardmäßige TextChatCommands erzeugen sollte.
Wenn true, the following TextChatCommands are created and put in a Folder named TextChatCommands inside 1> Class.TextChatService1> :
<tbody><tr><td><b>RBXClearCommand</b></td><td>löschen</td><td>cls</td><td>Löscht das Chat-Log für den lokalen Benutzer.</td><td><code>/cls</code></td></tr><tr><td><b>RBXKonsoleCommande</b></td><td>konsole</td><td /><td>Öffnet die Entwicklerkonsole.</td><td><code>/console</code></td></tr><tr><td><b>RBXEmoteCommand.</b></td><td>emote</td><td>e</td><td>Spielt ein Avatar-Emote ab.</td><td><code>/e tanz</code></td></tr><tr><td><b>RBXHelpCommand</b></td><td>helfen</td><td>?</td><td>Zeigt eine Liste der Chat-Befehle an.</td><td><code>/help</code></td></tr><tr><td><b>RBXMuteCommand</b></td><td>stummschalten</td><td>f</td><td>Stummt einen Benutzer durch seine <code>Class.Player.Name|Name</code> oder <code>Class.Player.DisplayName|Name</code> in allen <code>Class.TextChannel|TextChannels</code>.</td><td><code>/m Benutzername</code></td></tr><tr><td><b>RBXTeamCommand</b></td><td>team</td><td>t</td><td>Betritt den Team-Chat-Modus, in dem Nachrichten nur für Teamkollegen sichtbar sind.</td><td><code>/t</code></td></tr><tr><td><b>RBXUnmuteCommand</b></td><td>stummschaltung aufheben</td><td>um</td><td>Stummt ein Benutzer durch seine <code>Class.Player.Name|Name</code> oder <code>Class.Player.DisplayName|Name</code> in allen <code>Class.TextChannel|TextChannels</code>.</td><td><code>/um Benutzername</code></td></tr><tr><td><b>RBXVersionCommand</b></td><td>version</td><td>v</td><td>Zeigt die Chat-Version an.</td><td><code>/version</code></td></tr><tr><td><b>RBXWhisperCommand</b></td><td>flüstern</td><td>w</td><td>Betritt den Whisper-Modus mit einem weiteren <code>Class.Player</code>.</td><td><code>/w DisplayName</code> oder <code>/w @Username</code></td></tr></tbody>
Name | Primäre Alias | Sekundär-Alias | Beschreibung | Beispiel für die Verwendung |
---|
Beachten Sie, dass Sie TextChatCommands bearbeiten, erstellen und entfernen, auch wenn CreateDefaultCommands wahr ist. Beachten Sie auch, dass Stummschalt- und Mute-Befehle auf alle TextChannels angewandt werden.
CreateDefaultTextChannels
Bestimmt, ob
<tbody><tr><td><b>RBXGeneral</b></td><td><code>Class.TextChannel</code> für Spieler-Nachrichtungen. Im Chat-Fenster werden Nachrichten modifiziert, sodass <code>Class.TextChatMessage.PrefixText|PrefixText</code> eine <a href="../../../ui/rich-text.md">reiche Textfarbe-Namensschrift</a> erhalten, um den Chat-Spielern ihren einzigartigen Namenfarben zu geben. Wenn 0> Class.Player.Team0> existiert, wird stattdessen die Standard-</td></tr><tr><td><b>RBXSystem</b></td><td><code>Class.TextChannel</code> für Systemnachrichten. Im Chat-Fenster werden Nachrichten modifiziert, sodass <code>Class.TextChatMessage.Text</code> standardmäßig hellgrau ist, oder ein roter Farb-Tag, wenn <code>Class.TextChatMessage.Metric</code> das Wort 0>„Error“0> enthält.</td></tr><tr><td><b>RBXTeam\[BrickColor]</b></td><td> Class.TextChannel</td></tr><tr><td><b>RBXWhisper:\[userId1]\_\[userId2]</b></td><td><code>Class.TextChannel</code> für WhatsApp-Nachrichten zwischen zwei Spieler:in, die erstellt werden, wenn ein Spieler die /whisper</td></tr></tbody>
Kanal | Beschreibung |
---|
Beachten Sie, dass die Standard- TextChannel.OnIncomingMessage -Rückrufe überschrieben werden können. Beachten Sie auch, dass Sie TextChannels bearbeiten, erstellen und entfernen, auch wenn CreateDefaultTextChannels wahr ist.
Nachrichten von verschiedenen Textkanälen können in der Chat-Fenster mit ChannelTabsConfiguration getrennt werden.
Methoden
DisplayBubble
Zeigt eine Chat-Blase über der angezeigten Teil oder dem benutzereingebrachten Charakter an und feuert das Ereignis BubbleDisplayed mit den angegebenen Parametern mit diesem Methoden an. Kann Blasen für nicht-Spieler-Charaktere (NPCs) anzeigen, wenn Sie ein Teil innerhalb des Charakters, wie sein Kopf, spezifizieren.
Beachten Sie, dass diese Methode nur für die Verwendung in LocalScript oder in einem Script mit RunContext von 1>Ennum.RunContext.Client1> verfügbar ist.
Parameter
Der Teil oder Charakter, der die Blase oben angezeigt wird.
Der Text, der in der Chat-Blase angezeigt wird.
Rückgaben
CanUsersDirectChatAsync
Bestimmt, ob ein Benutzer die Erlaubnis hat, direkt mit anderen Benutzern in Erlebnissen basierend auf seinen elterlichen Kontroll-Einstellungen, zu chatten. Wird verwendet, wenn:
- Die Kommunikationslinie wird von Benutzern initiiert (nicht von Entwicklern oder Spielen begonnen)
- Der Zugriff auf die Kommunikation ist geschlossen und begrenzt
Parameter
Rückgaben
Code-Beispiele
local TextChatService = game:GetService("TextChatService")
local directChatParticipants = TextChatService:CanUsersDirectChatAsync(userId1, { userId2 })
-- Check for eligible participants
if #directChatParticipants > 0 then
local directChannel = Instance.new("TextChannel")
directChannel.Parent = TextChatService
for _, participant in directChatParticipants do
directChannel:AddUserAsync(participant)
end
return directChannel
end
warn("Could not create TextChannel. Not enough eligible users.")
return nil
Ereignisse
MessageReceived
Wie TextChannel.MessageReceived , wird ausgelöst, wenn TextChannel:DisplaySystemMessage() auf dem Client ausgeführt wird, oder wenn der Client eine gültige TextChannel:SendAsync() -Antwort vom Server erhält. Dieses Ereignis wird nur auf dem Client ausgelöst.
Wenn die Eigenschaft TextChannel.ShouldDeliverCallback des Servers gebunden ist und false zurückgibt, wird der Client keine TextChatService.MessageReceived feuern.
Verwenden Sie den TextChatMessage-Parameter, um die TextSource und den Text der Nachricht zu erhalten (mit TextChatMessage.Text).
Der TextChatMessage -Parameter ist das endgültige Ergebnis jeder Funktionen, die an TextChatService.OnIncomingMessage oder TextChannel.OnIncomingMessage gebunden sind.
Parameter
Der erhaltene TextChatMessage .
SendingMessage
Feuert, wenn TextChannel:SendAsync() vom Sender-Client aufgerufen wird. Verwenden Sie dies, um Platzhalter-Nachrichten anzuzeigen, während Sie auf die Antwort des Servers warten, um TextChannel:SendAsync() .
Parameter
Die TextChatMessage von der TextChannel:SendAsync() Anrufe.