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
Ö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
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.