Chat

Mostrar obsoleto

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.

Não criável
Serviço
Não replicado

O serviço de Chat hospeda o código Luau responsável por executar o sistema de chat legado.Semelhante a StarterPlayerScripts , objetos padrão como Scripts e ModuleScripts são inseridos no serviço.

Resumo

Propriedades

  • Determina se as mensagens de bate-papo do jogador aparecerão acima de seu avatar no jogo.

  • Segurança não acessível
    Ler Parallel

    Alterna se o framework de chat padrão deve ser carregado automaticamente quando o jogo for executado.

Métodos

Propriedades

BubbleChatEnabled

Ler Parallel

Se for verdadeiro, entrar em uma mensagem no chat resultará em uma bolha de chat aparecendo acima do Player.Character do jogador.Este comportamento pode ser ativado diretamente marcando esta caixa de seleção no Studio ou usando um LocalScript :


local ChatService = game:GetService("Chat")
ChatService.BubbleChatEnabled = true

Isso deve ser feito no cliente, alternando esse valor em um lado do servidor Script não terá efeito.

LoadDefaultChat

Segurança não acessível
Ler Parallel

Alterna se o framework de chat padrão deve ser carregado automaticamente quando o jogo for executado.

Métodos

Chat

()

A função de Chat dispara o evento Chat.Chatted com os parâmetros especificados neste método.

Por padrão, há um LocalScript dentro de cada objeto PlayerScripts do jogador chamado BubbleChat, o que causa a aparição de uma placa diálogo semelhante acima da parte ou personagem quando o evento de bate-papo é disparado.

Nota: Como os diálogos são controlados por um LocalScript, você não poderá ver quaisquer diálogos criados a partir deste método a menos que esteja executando no modo Jogar Sozinho.

Parâmetros

partOrCharacter: Instance

Uma instância que é a parte ou personagem que o diálogo BubbleChat deve aparecer acima.

Valor Padrão: ""
message: string

A string de mensagem sendo conversada.

Valor Padrão: ""

Um Enum.ChatColor especificando a cor da mensagem conversada.

Valor Padrão: "Blue"

Devolução

()

Amostras de código

The below example would create a part in Workspace and cause it to exclaim "Blame John!"

Chat:Chat

local ChatService = game:GetService("Chat")
local part = Instance.new("Part")
part.Anchored = true
part.Parent = workspace
ChatService:Chat(part, "Blame John!", "Red")

InvokeChatCallback

O InvokeChatCallback chamará uma função registrada por RegisterChatCallback, dado o conjunto de argumentos para enviar a função.Ele retornará o resultado da função registrada ou levantará um erro se nenhuma função foi registrada.

Essa função é chamada pelo Sistema de Chat Luau para que as chamadas de retorno de bate-papo possam ser registradas para alterar o comportamento de certas características.A menos que você esteja substituindo o sistema de chat padrão Luau por seu possuir, você não deve precisar chamar essa função.Você pode ler sobre as diferentes funções de retorno de chamada em Chat:RegisterChatCallback().

Parâmetros

callbackType: Enum.ChatCallbackType

O tipo de chamada a ser invocado.

Valor Padrão: ""
callbackArguments: Tuple

Os argumentos que serão enviados para a função de chamada registrada.

Valor Padrão: ""

Devolução

Os valores retornados pela função registrada no ChatCallbackType dado.

RegisterChatCallback

()

RegisterChatCallback vincula uma função a algum evento do sistema de chat para afetar o comportamento do sistema de chat Luau.O primeiro argumento determina o evento (usando o Enum.ChatCallbackType enum) ao qual o segundo argumento, a função, deve ser vinculado.O sistema de chat padrão Luau usa InvokeChatCallback para invocar funções registradas.Tentar registrar um retorno de chamada apenas do servidor ou do cliente em um peer que não seja um servidor ou cliente, respectivamente, causará um erro.As seções a seguir descrevem de que maneira funções registradas serão usadas.

Ao Criar Janela de Bate-Papo

Apenas do cliente.Invocado antes que o cliente construa a janela de chat.Deve retornar uma tabela de configurações para serem mescladas na informação retornada pelo módulo ChatSettings.

EmClientFormattingMessage

Apenas do cliente.Invocado antes que o cliente exiba uma mensagem (seja uma mensagem de bate-papo de jogador, mensagem do sistema ou comando /me).Essa função é invocada com o objeto de mensagem e pode (ou não pode) retornar uma tabela para ser mesclada em message.ExtraData.

EmClienteEnviando Mensagem

Não invocado neste momento.

Recebendo Mensagem no Servidor OnServerReceivingMessage

Apenas do servidor.Invocado quando o servidor recebe uma mensagem de um orador (note que os oradores podem não necessariamente estar conversando em Player).Este retorno de chamada é chamado com o ObjetoMensagem.A função pode fazer alterações no objeto Mensagem para alterar a maneira pela qual a mensagem é processada. O objeto Mensagem deve ser retornado para que esse chamado de volta faça qualquer coisa.: Definir esse retorno de chamada pode permitir que o servidor, por exemplo:

  • Defina message.ShouldDeliver para falso para cancelar a entrega da mensagem aos jogadores (útil para implementar uma lista de exclusão de chat)
  • Obtenha/defina a cor do nome do altofalante( message.ExtraData.NameColor , uma Cor3) em uma base de mensagem por mensagem

Parâmetros

callbackType: Enum.ChatCallbackType

O retorno para o qual a função deve ser registrada (isso determina de que maneira a função é chamada).

Valor Padrão: ""
callbackFunction: function

A função para chamar quando o retorno de chamada for invocado usando chat/conversa:InvokeChatCallback.

Valor Padrão: ""

Devolução

()

SetBubbleChatSettings

()

Essa função personaliza várias configurações do bate-papo de bolhas no jogo.

Antes de usar isso, certifique-se de que o bate-papo de bolhas está habilitado definindo Chat.BubbleChatEnabled para verdadeiro.

O argumento de configurações é uma tabela onde as chaves são os nomes das configurações que você deseja editar e os valores são o que você deseja alterar essas configurações para.Observe que você não precisa incluir todos eles no argumento de configurações, omitir alguns resultará em mantê-los com seu valor padrão.

Essa função é apenas do lado do cliente, tentar chamá-la no servidor causará um erro.

Parâmetros

settings: Variant

Uma tabela de configurações.

Valor Padrão: ""

Devolução

()

Amostras de código

When run from a LocalScript, this snippet will make all the chat bubbles appear with bigger text under a different font and a light blue background. Note that all the other settings will keep their default value.

Customize visual aspects

local ChatService = game:GetService("Chat")
ChatService:SetBubbleChatSettings({
BackgroundColor3 = Color3.fromRGB(180, 210, 228),
TextSize = 20,
Font = Enum.Font.Cartoon,
})

If you want to reset the bubble chat to its default look, you can call this function with an empty table, because any setting you omit from the argument will result in it returning to its default value:

Restore default settings

local ChatService = game:GetService("Chat")
ChatService:SetBubbleChatSettings({})

CanUserChatAsync

Rendimentos

Retornará falso se o jogador com o especificado Player.UserId não for permitido conversar por causa de suas configurações de conta.

Parâmetros

userId: number
Valor Padrão: ""

Devolução

CanUsersChatAsync

Rendimentos

Retornará falso se os dois usuários não puderem se comunicar porque suas configurações de conta não o permitirem.

Parâmetros

userIdFrom: number
Valor Padrão: ""
userIdTo: number
Valor Padrão: ""

Devolução

FilterStringAsync

Rendimentos

Aviso de Depreciação Parcial : Chamar essa função do cliente usando um LocalScript é descontinuare será desativado no futuro.A filtragem de texto deve ser feita a partir de um Script no servidor usando o similarmente nomeado TextService:FilterStringAsync(), que usa um conjunto diferente de parâmetros e digitarde retorno.

Jogos que não filtram adequadamente o texto gerado pelo jogador podem estar sujeitos à ação de moderação.Por favor, tenha certeza de que um jogo filtra adequadamente o texto antes de publicá-lo.

FilterStringAsync filtra uma string usando filtragem que é apropriada para o envio e recebimento do jogadorSe a string filtrada for usada para uma mensagem persistente, como o nome de uma comprar, escrever em uma placa, etc, então a função deve ser chamada com o autor como tanto o remetente quanto o receptor.

Essa função deve ser usada sempre que um jogador possa inserir texto personalizado em qualquer contexto , mais comumente usando um TextBox.Alguns exemplos de texto a ser filtrado:

  • Mensagens de chat personalizadas
  • Nomes de personagens personalizados
  • Nomes para uma loja em um jogo de estilo tycoon

Parâmetros

stringToFilter: string

A string crua para ser filtrada, exatamente como inserida pelo jogador.

Valor Padrão: ""
playerFrom: Player

O autor do texto.

Valor Padrão: ""
playerTo: Player

O destinatário pretendido do texto fornecido; use o autor se o texto for persistente (veja a descrição).

Valor Padrão: ""

Devolução

FilterStringForBroadcast

Rendimentos

Filtre uma string enviada de jogadorDe para transmissão para nenhum alvo específico. A mensagem filtrada tem mais restrições do que Chat:FilterStringAsync() .

Alguns exemplos de onde esse método pode ser usado:

  • Paredes de mensagens
  • Gritos entre servidores
  • Placas criadas pelo usuário

Chamar FilterString de LocalScripts é depreciado e será desativado no futuro.A filtragem de texto deve ser feita do lado do servidor Scripts.

Nota: Um jogo que não usa essa função de filtro para chat personalizado ou outro texto gerado pelo usuário pode ser submetido à ação de moderação.

Parâmetros

stringToFilter: string

Cadeia de mensagens sendo filtrada.

Valor Padrão: ""
playerFrom: Player

Instância do jogador que envia a mensagem.

Valor Padrão: ""

Devolução

string / cadeia / textode mensagens filtrada.

Amostras de código

The following example shows a simple way to use the FilterStringForBroadcast function. The example uses the message variable as the stringToFilter argument and the local player as the playerFrom argument.

The example then prints the result of the filtering function, FilteredString.

Chat:FilterStringForBroadcast

local Players = game:GetService("Players")
local Chat = game:GetService("Chat")
local playerFrom = Players.LocalPlayer
local message = "Hello world!"
-- Filter the string and store the result in the 'FilteredString' variable
local filteredString = Chat:FilterStringForBroadcast(message, playerFrom)
print(filteredString)

Eventos

Chatted

Dispara quando Chat:Chat().

Parâmetros

part: Instance
message: string