TextChatService
*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.
Usługa przetwarzania czatu tekstowego w czasie rzeczywistego doświadczenia, w tym zarządzanie kanałami, dekorowanie wiadomości, filtrowanie tekstu, tworzenie komend i rozwój interfejsów czatowych niestandardowych.
Aby dowiedzieć się więcej, zobacz czat tekstowy w doświadczeniu.
Podsumowanie
Właściwości
Określa, czy w pełni włączyć TextChatService lub powrócić do systemu czatu dziedzicznego.
Określa, czy TextChatService powinien utworzyć domyślny TextChatCommands .
Określa, czy TextChatService powinien utworzyć domyślną TextChannels .
Metody
Pokazuje okazję czatu nad główną częścią lub postacią gracza.
Określa, czy użytkownik ma uprawnienia do czatu bezpośrednio z innymi użytkownikami w wersjach opartych na ich ustawieniach rodzicielskich.
Zdarzenia
Wyst?puje, gdy TextChatService:DisplayBubble() jest nazywany.
Wyst?puje, gdy TextChannel:DisplaySystemMessage() jest wywo?any na klientu lub gdy klient otrzymuje wa?n? TextChannel:SendAsync() od serwera.
Wyst?puje, gdy TextChannel:SendAsync() jest wezwany przez klient wysy?ania.
Wywołania zwrotne
Właściwości
ChatTranslationEnabled
ChatVersion
Określa, czy ustawić w pełni włączone TextChatService lub powrócić do systemu czatu dziedzicznego. Ustawienie tego właściwości na Enum.ChatVersion.LegacyChatService skutecznie wyłącza TextChatService.
CreateDefaultCommands
Określa, czy TextChatService powinien utworzyć domyślny TextChatCommands .
Jeśli tak, to następujące TextChatCommands są utworzone i umieszczone w Folder o nazwie TextChatCommands w środku 2>Class.TextChatService2> :
<tbody><tr><td><b>RBXClearCommand</b></td><td>czyścić</td><td>kls</td><td>Oczyщает dziennik czatu dla lokalnego użytkownika.</td><td><code>/klasa</code></td></tr><tr><td><b>Komenda RBXConsole</b></td><td>konsola</td><td /><td>Otwiera konsolę rozwoju.</td><td><code>/console</code></td></tr><tr><td><b>Komenda RBXEmote</b></td><td>emotka</td><td>e</td><td>Gry w awatarze emotka.</td><td><code>/e taniec</code></td></tr><tr><td><b>Komenda RBXHelp</b></td><td>pomagać</td><td>?</td><td>Pokazuje listę komend czatu.</td><td><code>/pomoc</code></td></tr><tr><td><b>Komenda RBXMute</b></td><td>wyciszać</td><td>m</td><td>Zmutuje użytkownika przez jego Class.Player.Name|Name lub Class.Player.DisplayName|DisplayName w wszystkich Class.TextChannel|TextChannels.</td><td><code>/m Imię użytkownika</code></td></tr><tr><td><b>Komenda RBXTeam</b></td><td>zespół</td><td>t</td><td>Wejścia do trybu czatu zespołu, w którym wiadomości są widoczne tylko dla członków zespołu.</td><td><code>/t</code></td></tr><tr><td><b>Komendy RBXUnmuteCommand</b></td><td>wyłącz</td><td>um</td><td>Odblokowuje użytkownika poprzez jego Class.Player.Name|Name lub Class.Player.DisplayName|DisplayName w wszystkich Class.TextChannel|TextChannels.</td><td><code>/um Nazwa użytkownika</code></td></tr><tr><td><b>Komenda RBXVersionCommand</b></td><td>wersja</td><td>v</td><td>Pokazuje wersję czatu.</td><td><code>/zesiónka</code></td></tr><tr><td><b>Komenda RBXWhisper</b></td><td>szeptać</td><td>w</td><td>Wchodzi w tryb ciszy z innym <code>Class.Player</code>.</td><td><code>/w DisplayName</code> lub <code>/w @Username</code></td></tr></tbody>
Nazwa | Podstawowe Aliasy | Dodatkowe Aliasy | Opis | Przykład użycia |
---|
Uwaga, że możesz edytować, tworzyć i usuwać TextChatCommands nawet jeśli CreateDefaultCommands jest prawdą. Uwaga, że komendy mute i nie mute mają zastosowanie do wszystkich TextChannels.
CreateDefaultTextChannels
Określa, c
<tbody><tr><td><b>RBXGeneral</b></td><td><code>Class.TextChannel</code> dla wiadomości graczy. W oknie czatu wiadomości są zmieniane tak, aby <code>Class.TextChatMessage.PrefixText|PrefixText</code> otrzymał kolor tekstu <a href="../../../ui/rich-text.md">RichText</a> do udzielenia graczy. Jeśli 0>Class.Player.Team0> istnieje, to kolor nazwy domynty jest zastosnion</td></tr><tr><td><b>RBXSystem</b></td><td><code>Class.TextChannel</code> dla wiadomości systemowych. W oknie czatu wiadomości są zmodyfikowane, aby <code>Class.TextChatMessage.Text</code> otrzymał tag koloru szarego domyślnie lub tag koloru czerwonego, jeśli <code>Class.TextChatMessage.Metadata</code> zawiera słowo 0>„Error”0> .</td></tr><tr><td><b>RBXTeam\[KolorKlocka]</b></td><td><code>Class.TextChannel</code> dla wiadomości zespo?czonych dla ka?dej Class.Player.TeamColor i Team kana?ów, kt?re mog? by? u?ywane do u?ywania czatu tylko dla zespo?czonych.</td></tr><tr><td><b>RBXWhisper:\[userId1]\_\[userId2]</b></td><td><code>Class.TextChannel</code> dla wiadomości między dwóch graczy, stworzonych, gdy gracz używa komendy <code>/whisper</code> na innym graczu. Na przykład RBXWhisper:2276836</td></tr></tbody>
Kanał | Opis |
---|
Uwaga, że domyślne TextChannel.OnIncomingMessage wezwania można przeciągnąć. Uwaga, że możesz edytować, tworzyć i usunąć TextChannels nawet jeśli CreateDefaultTextChannels jest prawdziwy.
Wiadomości z różnych kanałów tekstowych można podzielić na różne zakładki w oknie czatu używając ChannelTabsConfiguration .
Metody
DisplayBubble
Pokazuje okienko czatu nad dostępnym elementem lub postacią gracza, i uruchomuje wydarzenie BubbleDisplayed z parami określonymi w tym metodzie. Można wyświetlać okienka czatu dla postaci nie graczy (NPC), jeśli określisz część w postaci jego głowy.
Uwaga, że ten metod jest dostępny tylko do użycia w LocalScript lub w Script z RunContext i 2>Class.Script2> .
Parametry
Część lub postać, która bąbelkować będzie wyświetlana powyżej.
Tekst do wyświetlenia w oknie czatu.
Zwroty
CanUsersDirectChatAsync
Określa, czy użytkownik ma uprawnienia do czatu bezpośrednio z innymi użytkownikami w wymiarach opartych na ich ustawieniach rodzicielskich. Do użycia, gdy:
- Linia komunikacji jest inicjowana przez użytkownika (nie jest inicjowana przez deweloperów lub gameplay)
- Dostęp do komunikacji jest zamknięty i ograniczony
Parametry
Zwroty
Przykłady kodu
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
Zdarzenia
MessageReceived
Podobnie jak TextChannel.MessageReceived, działa, gdy TextChannel:DisplaySystemMessage() jest wzywany na klientu lub gdy klient otrzymuje ważną Class.TextChannel:SendAsync() od serwera. Ten wąż jest uruchomiony tylko na klientu.
Jeśli właściwość TextChannel.ShouldDeliverCallback serwera jest związana i zwraca false, kliент nie będzie wysyłał TextChatService.MessageReceived .
Użyj parametru TextChatMessage, aby uzyskać TextSource i tekst wiadomości (z TextChatMessage.Text).
Parametr TextChatMessage jest wynikiem końcowym dowolnych funkcji związanych z TextChatService.OnIncomingMessage lub TextChannel.OnIncomingMessage .
Parametry
Otrzymano TextChatMessage .
SendingMessage
Występuje, gdy TextChannel:SendAsync() jest wezwany przez klienta wysyłowego. Użyj tego, aby umożliwić wiadomości zapasowe dla użytkownika, czekając na odpowiedź serwera na TextChannel:SendAsync().
Parametry
Class.TextChatMessage z wezwania TextChannel:SendAsync()