Chat

Afficher les obsolètes

*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.

Création impossible
Service
Non répliqué

Le service Chat héberge le code Lua responsable de l'exécution du système de chat hérité. Semblable à StarterPlayerScripts , les objets par défaut comme 2> Class.Script|Scripts2> et 5> Class.ModuleScript|ModuleScripts5> sont insérés dans le service.

Résumé

Propriétés

  • Lecture parallèle

    Détermine si les messages de chat du joueur apparaîtront au-dessus de leur avatar dans le jeu.

  • Sécurité inaccessible
    Lecture parallèle

    Bascule si le framework de chat par défaut devrait être chargé automatiquement lorsque le jeu s'exécute.

Méthodes

Propriétés

BubbleChatEnabled

Lecture parallèle

Si oui, entrer un message dans le chat entraînera la création d'une bulle de chat au-dessus du Player.Character du joueur. Ce comportement peut être activé en cliquant directement sur cette case à cocher dans Studio, ou en utilisant un LocalScript :


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

Ceci doit être fait sur le client, le basculage de cette valeur dans un Script côté serveur n'aura aucun effet.

LoadDefaultChat

Sécurité inaccessible
Lecture parallèle

Bascule si le framework de chat par défaut devrait être chargé automatiquement lorsque le jeu s'exécute.

Méthodes

Chat

void

La fonction de discussion lance l'événement Chat.Chatted avec les paramètres spécifiés dans cette méthode.

Par défaut, il y a un LocalScript à l'intérieur de chaque joueurPlayerScripts nommé BubbleChat, qui cause un panneau de dialogue à apparaître au-dessus de la partie 2>Personnage de chat2> lorsque l'événement de discussion est déclenché.

Remarque : puisque les dialogues sont contrôlés par un script local, vous ne pourrez pas voir les dialogues créés à partir de cette méthode à moins d'être en mode Jouer en solo.

Paramètres

partOrCharacter: Instance

Une instance qui est la partie ou le personnage qui la bulle de discussion dialogue doit apparaître au-dessus.

message: string

La chaîne de message est en cours de discussion.

Un Enum.ChatColor définissant la couleur du message de chat.

Valeur par défaut : "Blue"

Retours

void

Échantillons de code

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

InvokeChatCallback appellera une fonction enregistrée par RegisterChatCallback, en fonction du type d'invocation de chat et des arguments pour envoyer la fonction. Il retournera le résultat de la fonction enregistrée ou l'erreur si aucune fonction n'a été enregistrée.

Cette fonction est appelée par le système de chat Lua pour que les rappels de chat puissent être enregistrés pour modifier le comportement de certaines fonctionnalités. À moins que vous ne remplaciez le système de chat Lua par posséderavec le vôtre, vous ne devriez pas avoir à appeler cette fonction. Vous pouvez lire à propos des différents rappels de fonction au Chat:RegisterChatCallback() .

Paramètres

callbackType: Enum.ChatCallbackType

Le type de rappel à invoquer.

callbackArguments: Tuple

Les arguments qui seront envoyés à la fonction de rappel enregistrée.


Retours

Les valeurs renvoyées par la fonction enregistrée au nom donné ChatCallbackType.

RegisterChatCallback

void

RegisterChatCallback lie une fonction à un événement de chat dans le système pour affecter le comportement du système de chat Lua. Le premier argument détermine l'événement (en utilisant l'Enum.ChatCallbackType枚) auquel le deuxième argument, la fonction, sera lié. Le système de chat Lua par défaut utilise

Lors de la création de la fenêtre de discussion

Client-only. Invocé avant que le client construise la fenêtre de discussion. Doit retourner une table de paramètres pour être fusionné dans l'information retournée par le module ChatSettings.

Message de formatage du client

Client-only. Invocé avant que le client affiche un message (qu'il s'agisse d'un message de chat du client, d'un message du système ou/et de commande /me). Cette fonction est invoquée avec l'objet de message et peut (ou ne peut pas) renvoyer une table à être fusionnée dans message.ExtraData .

Message d'envoi sur client

Pas invoqué à ce moment.

Message de réception sur le serveur

Serveur uniquement. Invité lorsque le serveur reçoit un message d'un locuteur (remarquez que les locuteurs peuvent ne pas nécessairement être un Player chat). Ce rappel est appelé avec l'objet Message. La fonction peut apporter des modifications à l'objet Message pour modifier la manière dont le message est traité. L'objet Message doit être renvoyé pour que ce rappel se produise Définir ce rappel peut permettre au

  • Définir message.ShouldDeliver sur false pour annuler la livraison du message aux joueurs (utilisé pour l'implémentation d'une liste d'ex exclusion du chat)
  • Obtenez/définissez la couleur du nom du enceinte( message.ExtraData.NameColor , une couleur3) sur une base de message par message

Paramètres

callbackType: Enum.ChatCallbackType

Le rappel auquel la fonction sera enregistrée (ce qui détermine la manière dont la fonction est appelée).

callbackFunction: function

La fonction à appeler lorsque le rappel est invoqué en utilisant chat:ExecuteChatCallback.


Retours

void

SetBubbleChatSettings

void

Cette fonctionnalité personnalise divers paramètres de la messagerie de bulles dans le jeu.

Avant d'utiliser ceci, assurez-vous que le chat à bulles est activé en définissant Chat.BubbleChatEnabled sur vrai.

L'argument des paramètres est une table où les clés sont les noms des paramètres que vous souhaitez modifier et les valeurs sont ce que vous voulez changer ces paramètres. Remarquez que vous n'avez pas à inclure tous d'entre eux dans l'argument des paramètres, omitting certains résulte en ce qu'ils gardent leur valeur par défaut.

Cette fonction est côté client uniquement, essayant de l'appeler sur le serveur déclenchera une erreur.

Paramètres

settings: Variant

Une table de paramètres.


Retours

void

Échantillons de code

Customize visual aspects

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

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

CanUserChatAsync

Rendement

Renvoie faux si le joueur avec le Player.UserId spécifié n'est pas autorisé à discuter en raison de leurs paramètres de compte.

Paramètres

userId: number

Retours

CanUsersChatAsync

Rendement

Renvoie faux si les deux utilisateurs ne peuvent pas communiquer parce que leurs paramètres de compte ne le permettent pas.

Paramètres

userIdFrom: number
userIdTo: number

Retours

FilterStringAsync

Rendement

Avertissement de dépréciation partielle : L'utilisation de cette fonctionnalité depuis le client en utilisant un LocalScript est marquer comme obsolète, et sera désactivée dans le futur. Le filtrage de texte doit être effectué à partir d'un Script sur le serveur en utilisant le même nom de 0> Class.TextService:FilterStringAsync()0>, qui utilise un taper

Les jeux qui ne filtrent pas correctement le texte généré par le joueur pourraient être soumis à une action de modération. Assurez-vous qu'un jeu génère correctement le texte avant de le publier.

FilterStringAsync filtre une chaîne en utilisant le filtrage qui est approprié pour le joueur d'envoi et de réception. Si la chaîne filtrée doit être utilisée pour un message persistant, comme le nom d'une boutique, l'écriture sur une plaque, etc., alors la fonction doit être appelée avec l'auteur en tant que le sendeur et le récepteur.

Cette fonction doit être utilisée chaque fois qu'un joueur peut entrer du texte personnalisé dans n'importe quel contexte , le plus souvent en utilisant un TextBox. Certains exemples de texte à filtrer :

  • Messages de chat personnalisés
  • Noms de personnages personnalisés
  • Noms pour une boutique dans un jeu de style Tycoon

Paramètres

stringToFilter: string

La chaîne de caractères brute à filtrer, exactement comme entrée par le joueur.

playerFrom: Player

L'auteur du texte.

playerTo: Player

Le destinataire prévu du texte fourni ; utilisez l'auteur si le texte est persistant (voir description).


Retours

FilterStringForBroadcast

Rendement

Filtrer une chaîne envoyée à partir de playerFrom pour la diffuser à un public spécifique. Le message filtré a plus de restrictions que Chat:FilterStringAsync() .

Certains exemples d'endroits où cette méthode pourrait être utilisée :

  • Murs de messages
  • Appels croisés
  • Signes créés par les utilisateurs

L'appel de FilterString depuis LocalScripts est obsolète et sera désactivé dans le futur. La filtrage de texte devrait être fait du côté du serveur en utilisant FilterStringAsync.

Remarque : Un jeu qui n'utilise pas cette fonction de filtre pour le chat personnalisé ou d'autres textes générés par l'utilisateur peut être soumis à une action de modération.

Paramètres

stringToFilter: string

La chaîne de message est filtrée.

playerFrom: Player

Instances du joueur envoyant le message.


Retours

chaînede message filtré.

Échantillons de code

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)

Évènements

Chatted

Se déclenche lorsque Chat:Chat() est appelé.

Paramètres

part: Instance
message: string