Este ejemplo demuestra cómo asignar etiquetas de chat a los jugadores en función de su membresía en un grupo. Las etiquetas de chat son una forma de identificar visualmente a un jugador en la ventana de chat y son útiles para indicar el rol o estado de un jugador.

Debido a que los callbacks de chat de texto esperan un callback que no se detenga, intentar consultar el estado de membresía de un jugador en el callback TextChatService.OnIncomingMessage no se recomienda, ya que puede hacer que el sistema de chat se cuelgue o vuelva inresponsive.
En su lugar, establece un atributo para un jugador cuando se una al servidor. Establecer un atributo te permite reutilizar el estado del jugador en otras partes de tu juego, como permitir acceso a áreas particulares o proporcionar experiencias de bonificación.
Crea un Script en ServerScriptService y añade el siguiente código:
Serverlocal Players = game:GetService("Players")-- Reemplaza 123456 con el ID del grupo que deseas verificarlocal groupID = 123456Players.PlayerAdded:Connect(function(player)local success, isInGroup = pcall(function()return player:IsInGroupAsync(groupID)end)if success and isInGroup thenplayer:SetAttribute("IsVIP", true)elseplayer:SetAttribute("IsVIP", false)endend)Crea un LocalScript en StarterPlayer ⟩ StarterCharacterScripts y añade el siguiente código para mostrar una etiqueta [VIP] en la ventana de chat:
Clientlocal 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