CRÉEZ VOTRE MONDE
Conversation
Personnaliser l'envoi et la réception des messages de chat
11min
Vous pouvez personnaliser les messages de chat que vous envoyez et recevez en important le package ZEPETO.Chat.
❗️ Avertissement
- Cette fonctionnalité est disponible dans un monde où des éléments multijoueurs sont implémentés.
👍 Points de référence
- Vous pouvez envoyer/recevoir des chats même dans un environnement d'édition.
- Seuls les messages de chat créés par les utilisateurs via des gestionnaires peuvent être envoyés/reçus (les chats rapides, les messages système ne peuvent pas être reçus)
TypeScript
1class ZepetoChat extends System.Object {
2 public static get Instance(): ZepetoChatImplementation;
3 public static get OnReceivedMessage(): UnityEngine_Events.UnityEvent$1<IMessage>;
4 public constructor();
5 public static Send($message: string): void;
6}
- ZepetoChat. Vous pouvez utiliser Send() pour envoyer des messages spécifiques à la fenêtre de chat.
- Vous pouvez utiliser ZepetoChat.OnReceivedMessage.AddListener() pour déterminer quel événement recevoir le message.
Appuyez sur les boutons 1 et 2 pour envoyer un message spécifié. Créez un message personnalisé dans inputField pour envoyer le message.

Exemple de paramétrage
TypeScript
1import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
2import { Button, InputField, Text } from 'UnityEngine.UI';
3import { ZepetoChat, MessageType, UserMessage } from 'ZEPETO.Chat';
4import { Color } from 'UnityEngine';
5
6
7export default class CustomChat extends ZepetoScriptBehaviour {
8
9 public custom1ChatBtn: Button;
10 public custom2ChatBtn: Button;
11 public sendChatBtn: Button;
12 public resultText: Text;
13 public inputChatbox: InputField;
14
15 Start() {
16 // Lorsque le bouton est cliqué
17 this.custom1ChatBtn.onClick.AddListener(() => {
18 // Changer la couleur du texte
19 this.resultText.color = Color.magenta;
20 // Envoyer le message
21 ZepetoChat.Send("1");
22 });
23 this.custom2ChatBtn.onClick.AddListener(() => {
24 this.resultText.color = Color.blue;
25 ZepetoChat.Send("2");
26 });
27 this.sendChatBtn.onClick.AddListener(() => {
28 this.resultText.color = Color.black;
29 const inputMsg = this.inputChatbox.text;
30 ZepetoChat.Send(inputMsg);
31 });
32
33 // Recevoir le message
34 ZepetoChat.OnReceivedMessage.AddListener(msg => {
35 const userMsg = msg as UserMessage;
36 this.resultText.text = `[USER - ${userMsg.userName}] - ${userMsg.message}`;
37 });
38 }
39}

Exemple de résultats d'exécution
- Fonction disponible dans un monde où des éléments multijoueurs sont implémentés.
- Vous pouvez vérifier sur le test mobile.
- Déclarations
TypeScript
1public static SetActiveChatUI($value: boolean): void;
- Exemple de code
- Appuyez sur un bouton spécifique pour activer/désactiver le bouton de chat
TypeScript
1import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
2import { Button } from 'UnityEngine.UI';
3import { ZepetoChat, MessageType, UserMessage } from 'ZEPETO.Chat';
4
5export default class ChatController extends ZepetoScriptBehaviour {
6
7 public chatUIBtn: Button;
8 private isChatUIActive : boolean = true;
9
10 Start() {
11 // Lorsque le bouton est cliqué
12 this.chatUIBtn.onClick.AddListener(() => {
13 // Envoyer un message
14 if (this.isChatUIActive) {
15 ZepetoChat.SetActiveChatUI(false);
16 this.isChatUIActive = false;
17 console.log("Chat UI désactivé");
18 }
19 else {
20 ZepetoChat.SetActiveChatUI(true);
21 this.isChatUIActive = true;
22 console.log("Chat UI activé");
23 }
24 });
25 }
26}

- Fonction disponible dans un monde où des éléments multijoueurs sont implémentés.
- Vous pouvez vérifier sur le test mobile.
- Déclarations
TypeScript
1public isFiltered: boolean;
- Exemple de code
- Déterminez si le message de chat reçu est un message filtré et affichez-le à l'écran.
TypeScript
1import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
2import { Text } from 'UnityEngine.UI';
3import { ZepetoChat, MessageType, UserMessage } from 'ZEPETO.Chat';
4
5export default class ChatController extends ZepetoScriptBehaviour {
6
7 public filterResultText: Text;
8
9 Start() {
10 // Recevoir le message
11 ZepetoChat.OnReceivedMessage.AddListener(msg => {
12 const userMsg = msg as UserMessage;
13 if (userMsg.isFiltered) {
14 this.filterResultText.text = `Ce message a été filtré : ${userMsg.message}`;
15 } else {
16 this.filterResultText.text = `Ce message n'est pas filtré : ${userMsg.message}`;
17 }
18 });
19 }
20}


Mis à jour 10 Oct 2024

Cette page vous a-t-elle aidée?