TextChatService
*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.
Kanalları yönetmeyi, mesajları dekorasyonunu, metni filtrelemeyi, komutlar oluşturmayı ve özel sohbet arayüzlerini geliştirmeyi içeren deneyim içi metin sohbeti işleyimi.
Daha fazlasını öğrenmek için, In-Experience Text Chat bakın.
Özet
Özellikler
Class.TextChatService'ın tam olarak etkinleştirilmesini veya miras chat sistemine geri dönmesini belirler.
Class.TextChatService 'in varsayılan TextChatCommands oluşturup oluşturmadığını belirler.
Class.TextChatService 'in varsayılan TextChannels oluşturup oluşturmadığını belirler.
Yöntemler
Sunulan bölüm veya oyuncu karakterinin üzerinde bir sohbet balonu görüntüler.
Kullanıcının ebeveyn kontrol ayarlarına dayanan deneyimlerde diğer kullanıcılarla doğrudan sohbet etme izni verir.
Etkinlikler
Class.TextChatService:DisplayBubble() çağrıldığında yanar.
Class.TextChannel:DisplaySystemMessage() iletisi alındığında, TextChannel:SendAsync() yanıtını aldığında veya sunucudan geçerli bir Class.TextChannel:SendAsync() yanıtı alındığında işlenir.
Gönderici tarafından çağrıldığında TextChannel:SendAsync() isimli eylemi yapar.
Geri Aramalar
Bir balon sohbeti görüntüleneceğinden haberdar olunca çağrılır.
Yeni bir mesajın sohbet penceresinde görüntülenmek üzere olduğunda çağrılır. Bu sadece kliende uygulanabilir.
Gelen bir mesajı aldığında çağrılır TextChatService.
Özellikler
ChatTranslationEnabled
ChatVersion
Class.TextChatService 'i tamamen etkinleştirecek veya miras chat sistemine dönecek şekilde yapılandırır. Bu özelliği Enum.ChatVersion.LegacyChatService olarak ayarlarsanız, TextChatService 'i etkinleştirirsiniz.
CreateDefaultCommands
Class.TextChatService 'in varsayılan TextChatCommands oluşturup oluşturmadığını belirler.
Eğer doğruysa, aşağıdaki TextChatCommands oluşturulur ve Folder adında TextChatCommands içinde 2>Class.TextChatService2> içine koyulur:
<tbody><tr><td><b>RBXClearCommandınızı Sil ]</b></td><td>temizle</td><td>kls</td><td>Yerel kullanıcı için sohbet günlüğünü temizler.</td><td><code>/cls</code></td></tr><tr><td><b>RBXKonsol Komutu</b></td><td>konsol</td><td /><td>Geliştirici Konsolünü açar.</td><td><code>/console</code></td></tr><tr><td><b>RBXEmoteCommand</b></td><td>ifade</td><td>e</td><td>Bir avatar ifadeoynatır.</td><td><code>/e dans et</code></td></tr><tr><td><b>RBXHelpCommandının yardımı</b></td><td>yardım</td><td>?</td><td>Bir dizi sohbet komutunu gösterir.</td><td><code>/yardım</code></td></tr><tr><td><b>RBXMuteCommandi</b></td><td>sustur</td><td>m</td><td>Bir kullanıcıyı Class.Player.Name|Name veya Class.Player.DisplayName|DisplayName ile sınırlandırır.Class.TextChannel|TextChannels'ın tümü Class.TextChannel|TextChannels ile aynı.</td><td><code>/m Kullanıcı Adı</code></td></tr><tr><td><b>RBXTeamCommandi</b></td><td>takım</td><td>t</td><td>Mesajların sadece takım arkadaşlarına görüntülenmesini sağlayan takım sohbet moduna girer.</td><td><code>/t></code></td></tr><tr><td><b>RBXUnmuteCommandını Gizle</b></td><td>sus</td><td>şey</td><td>Bir kullanıcıyı <code>Class.Player.Name|Name</code> veya <code>Class.Player.DisplayName|DisplayName</code> ile tüm <code>Class.TextChannel|TextChannels</code> 'de unmutes.</td><td><code>/um Kullanıcı Adı</code></td></tr><tr><td><b>RBXVersionCommandı</b></td><td>sürüm</td><td>v</td><td>Sohbet versiyonunu gösterir.</td><td><code>/version</code></td></tr><tr><td><b>RBXWhisperCommandı</b></td><td>fısılda</td><td>w</td><td>Başka bir <code>Class.Player</code> ile gizlice moduna girer.</td><td><code>/w DisplayName</code> veya <code>/w @Username</code></td></tr></tbody>
İsim | Birincil Alias | İkinci Alias | Açıklama | Kullanım Örneği |
---|
Class.TextChatCommand|TextChatCommands ı düzenlemek, yaratmak ve kaldırmak için CreateDefaultCommands ile aynı. Ayrıca, susturma ve susturma komutları tüm TextChannels için geçerlidir.
CreateDefaultTextChannels
Class
<tbody><tr><td><b>RBXGeneral</b></td><td> Class.TextChannel için oyun mesajları için. Chat pencinde, mesajlar <code>Class.TextChatMessage.PrefixText|PrefixText</code> iletiyen bir <a href="../../../ui/rich-text.md">zenginli text</a> font rengi alarak oyun oyunu verir. Eğer 0> Class.Player.Team0> varsa, bu <code>3> Class.Team.TeamColor</code></td></tr><tr><td><b>RBXSystem</b></td><td><code>Class.TextChannel</code> için sistem mesajları için. Chat penceresinde, mesajlar özellikle <code>Class.TextChatMessage.Text</code> için açıkta bir gris renkli etiket verilir veya kırmızı renkli etiket verilir, böylece <code>Class.TextChatMessage.Metadata</code> 0>“Hata”0> kelimesini içerir.</td></tr><tr><td><b>RBXTeam\[BrickColor]</b></td><td><code>Class.TextChannel</code> için takımışıklarınızıkışıklarınızıkış</td></tr><tr><td><b>RBXWhisper:\[userId1]\_\[userId2]</b></td><td><code>Class.TextChannel</code> için örnek mesajlar arasında seslendirilmiş mesajlar arasında seslendirilmiş mesajlar ar</td></tr></tbody>
Kanal | Açıklama |
---|
Varsayılan TextChannel.OnIncomingMessage çağrılarının üzer書き edilebilir olduğunu unutmayın. Ayrıca, TextChannels doğruysa, CreateDefaultTextChannels ile etkileşime geçebilirsiniz.
Farklı TextChannel'lar'dan mesajlar sohbet penceresinde ChannelTabsConfiguration kullanarak ayrılabilir.
Yöntemler
DisplayBubble
Yüklenmiş bir sohbet balonu sağladığınız bölümün veya oyuncu karakterinin üzerinde bir sohbet balonu gösterir ve BubbleDisplayed etkinliğini bu yöntemin belirlediği parametrelerle gösterir. Karakterinizin kafası gibi bir bölüm içinde bir balon gösterebilirsiniz.
Bu yöntem sadece LocalScript veya Script ile kullanılabilir veya RunContext ile 1>En.RunContext.Client1> arasında bir 4>Class.Script.Run4> kullanılabilir.
Parametreler
Üstte görüntülenen balonun kısmı veya karakteri.
Sohbet balonunda görüntülenen metin.
Dönüşler
CanUsersDirectChatAsync
Kullanıcının ebeveyn kontrol ayarlarına dayanan deneyimlerde diğer kullanıcılarla doğrudan sohbet etme izni olup olmadığını belirler. Kullanıldığında:
- İletişim hattı kullanıcı tarafından başlatıldı (geliştirici veya oyun modu tarafından başlatıldığı için)
- İletişime erişim kapatılmış ve sınırlı
Parametreler
Dönüşler
Kod Örnekleri
This example checks if two users can chat, creates a new TextChannel, and adds them to it.
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
Etkinlikler
BubbleDisplayed
Class.TextChatService:DisplayBubble() çağrıldığında yanar.
Parametreler
MessageReceived
Like TextChannel.MessageReceived , klienin TextChannel:DisplaySystemMessage() ile ilgili olduğunda veya klienin sunucudan geçerli bir TextChannel:SendAsync() yanıtı aldığında etkinleştirilir. Bu olay sadece kliende etkinleştirilir.
Eğer sunucunun TextChannel.ShouldDeliverCallback özelliği bağlıdır ve false döndürürse, klien TextChatService.MessageReceived ı yanlış yere çekmez.
Class.TextChatMessage parametresini kullanarak TextSource ve mesajın metnini (ile TextChatMessage.Text ) alın.
Class.TextChatMessage parametresi, TextChatService.OnIncomingMessage veya TextChannel.OnIncomingMessage ile bağlantılı herhangi bir işlevin sonucudur.
Parametreler
Alınan TextChatMessage .
SendingMessage
Gönderici tarafından çağrıldığında yanıtlanır. TextChannel:SendAsync() içindeki mesajların kullanıcıyla gösterilmesini sağlayın, böylece sunucu yanıtını beklerken kullanıcıya gösterilebilir.
Parametreler
Class.TextChatMessageTextChannel:SendAsync() çağrısından.
Geri Aramalar
OnBubbleAdded
Bir balon sohbeti görüntüleneceğinden kuşkulanıldığında çağrılır. Bu sadece client'da uygulanabilir.
Kişisel balon sohbet mesajlarını özelleştirmek için kullanılır. Bu çağrı geri döndüğünde, Class.BubbleChatMessageProperties</
Eğer sohbet mesajı bir oyuncu tarafından gönderilirse, message.TextSource oyuncuya karşılık gelir ve adornee``nil olacaktır.
Sohbet mesajı TextChatService:DisplayBubble() aracılığıyla gönderilirse, adornee olacak ve partOrCharacter olacak 1> nil1> .
Parametreler
Gelen TextChatMessage .
Balon sohbet mesajının bağlandığı kısım veya karakter.
Dönüşler
Bir TextChatMessage geri döndüğünde, bu özellikler ilgili balona uygulanacak ve BubbleChatConfiguration özellikleri üzerindeki değişiklikleri geçersiz kılacaktır.
OnChatWindowAdded
Yeni bir mesajın sohbet penceresinde görüntülenmek üzere olduğunda çağrılır. Bu sadece kliende uygulanabilir.
Sohbet penceresinde görünen mesajları kişiselleştirmek için kullanılır. Bu çağrı geri döndüğünde bir ChatWindowMessageProperties , bu özellikler iliş
Parametreler
Gelen TextChatMessage .
Dönüşler
Bir TextChatMessage geri döndüğünde, bu özellikler ilgili mesaja uygulanacak ve ChatWindowConfiguration özellikleri üzerindeki değişiklikleri geçersiz kılacaktır.
OnIncomingMessage
Gelen bir mesaj alındığında çağrılır. TextChatService sadece kliende uygulanabilir.
Class.TextChatMessage|TextChatMessages ı süslemek için kullanın. Bu çağrı, bu çağrı şemasını TextChatMessageProperties ile birleştirir ve bu özellikleri yeni bir TextChatMessage oluşturmak için 1> Class.TextChatMessage iletkenine birleştirir.
Mesaj gönderen istemciye bağlandığında, bu çağrı iki kez çalıştırılır; ilk olarak mesaj başlangıçta yerel olarak gönderildiğinde ve sonra istemci filtrelenmiş mesajın sonucunu aldığında.
Not ettiğiniz gibi, bu TextChatService.OnIncomingMessage çağrısı, herhangi bir Class.TextChannel.OnIncomingMessage çağrısından önce TextChannel.OnIncomingMessage bir süre içinde çalışır.
kodsadece bir kısmında tanımlanmalıdır. Çok sayıda bağlantı, belirlenmez bir şekilde birbirini üst üste ele geçirecektir.
Parametreler
Gelen TextChatMessage .
Dönüşler
Bir TextChatMessageProperties için döndürülürse, bu özellikler TextChatMessage parametresiyle birleştirilir ve bu özelliklerle bir yeni TextChatMessage oluşturulur, aksi takdirde, eğer 1> nil1> döndürülürse, b