Ten przykład pokazuje, jak przypisać tagi czatu graczom w oparciu o ich członkostwo w grupie .Tagi czatu są sposobem wizualnego zidentyfikowania gracza w oknie czatu i przydatne do wskazania roli lub statusu gracza.

Ponieważ powiadomienia o rozmowie tekstowej oczekują niezawodnego powiadomienia, próbującego zapytać o status członkostwa w grupie gracza w powrocie TextChatService.OnIncomingMessage nie jest zalecane, ponieważ może to spowodować, że system czatu zatrzyma się lub stanie się nieodpowiedzialny.
Zamiast tego ustaw atrybut gracza gdy dołączą do serwera.Ustawienie atrybutu pozwala ponownie wykorzystać status gracza w innych częściach twojego doświadczenia, takich jak umożliwienie dostępu do określonych obszarów lub zapewnienie bonusowego doświadczenia.
Stwórz Script w ServerScriptService i dodaj następujący kod do niego:
Serwerlocal Players = game:GetService("Players")-- Zastąp 123456 ID grupy, której chcesz sprawdzićlocal groupID = 123456Players.PlayerAdded:Connect(function(player)local success, isInGroup = pcall(function()return player:IsInGroup(groupID)end)if success and isInGroup thenplayer:SetAttribute("IsVIP", true)elseplayer:SetAttribute("IsVIP", false)endend)Utwórz LocalScript w StarterPlayer ⟩ StarterCharacterScripts i dodaj następujący kod, aby wyświetlić tag [VIP] w oknie czatu:
Kliencilocal Players = game:GetService("Players")local TextChatService = game:GetService("TextChatService")TextChatService.OnIncomingMessage = function(message: TextChatMessage)local textSource = message.TextSourceif textSource thenlocal player = Players:GetPlayerByUserId(textSource.UserId)if player thenif player:GetAttribute("IsVIP") == true thenlocal overrideProperties = Instance.new("TextChatMessageProperties")overrideProperties.PrefixText = "[VIP] " .. message.PrefixTextreturn overridePropertiesendendendreturn nilend