Dieses Beispiel zeigt, wie Chat-Tags Spielern basierend auf ihrer Mitgliedschaft in einer Gruppe zugewiesen werden. Chat-Tags sind eine Möglichkeit, einen Spieler im Chatfenster visuell zu identifizieren und nützlich, um die Rolle oder den Status eines Spielers anzuzeigen.

Da Text-Chat-Rückrufe einen non-yielding Rückruf erwarten, wird nicht empfohlen, den Mitgliedschaftsstatus einer Gruppe in einem TextChatService.OnIncomingMessage Rückruf abzufragen, da dies dazu führen kann, dass das Chatsystem hängt oder unresponsive wird.
Stattdessen setzen Sie ein Spieler- Attribut, wenn sie dem Server beitreten. Ein Attribut zu setzen, ermöglicht es Ihnen, den Status des Spielers in anderen Teilen Ihres Spiels wiederzuverwenden, wie z. B. den Zugang zu bestimmten Bereichen zu gewähren oder Bonus-Erfahrungen bereitzustellen.
Erstellen Sie ein Script in ServerScriptService und fügen Sie den folgenden Code hinzu:
Serverlocal Players = game:GetService("Players")-- Ersetzen Sie 123456 durch die Gruppen-ID, die Sie überprüfen möchtenlocal 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)Erstellen Sie ein LocalScript in StarterPlayer ⟩ StarterCharacterScripts und fügen Sie den folgenden Code hinzu, um ein [VIP] Tag im Chatfenster anzuzeigen:
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