Sohbet etiketleri atayın

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Bu örnek, bir grup üyeliğine dayanarak oyunculara sohbet etiketleri nasıl atanacağını gösterir.Sohbet etiketleri, sohbet penceresinde bir oyuncuyu görsel olarak tanımlamanın ve bir oyuncunun rolünü veya durumunu göstermenin bir yoludur.

VIP chat tag appended to user name in the chat window.

Çünkü metin sohbet çağrıları bir oyuncunun grubun üyelik durumunu sorgulamaya çalışıyor ve grubun üyelik durumu askıya alınıyor veya yanıt vermiyor olabilir, çünkü sohbet sisteminin kilitlenmesine veya yanıt vermemesine neden olabilir.

Bunun yerine, sunucuya katıldıklarında bir oyuncuya özellik ayarlayın.Bir öznitelik ayarlamak, oyuncunun durumunu deneyimin diğer kısımlarında yeniden kullanmanıza izin verir, örneğin belirli alanlara erişim sağlamak veya bonus deneyim sağlamak.

  1. Create a Script in ServerScriptService ve aşağıdaki kodu ekleyin:

    Sunucu

    local Players = game:GetService("Players")
    -- 123456'yi kontrol etmek istediğiniz grup kimliğiyle değiştirin
    local groupID = 123456
    Players.PlayerAdded:Connect(function(player)
    local success, isInGroup = pcall(function()
    return player:IsInGroup(groupID)
    end)
    if success and isInGroup then
    player:SetAttribute("IsVIP", true)
    else
    player:SetAttribute("IsVIP", false)
    end
    end)
  2. Create a LocalScript in StarterPlayerStarterCharacterScripts ve sohbet penceresinde bir [VIP] etiketi görüntülemek için aşağıdaki kodu ekleyin:

    Müşteri

    local Players = game:GetService("Players")
    local TextChatService = game:GetService("TextChatService")
    TextChatService.OnIncomingMessage = function(message: TextChatMessage)
    local textSource = message.TextSource
    if textSource then
    local player = Players:GetPlayerByUserId(textSource.UserId)
    if player then
    if player:GetAttribute("IsVIP") == true then
    local overrideProperties = Instance.new("TextChatMessageProperties")
    overrideProperties.PrefixText = "[VIP] " .. message.PrefixText
    return overrideProperties
    end
    end
    end
    return nil
    end