Sesuaikan pengiriman dan penerimaan pesan obrolan
11 mnt
Anda dapat menyesuaikan pesan obrolan yang Anda kirim dan terima dengan mengimpor paket ZEPETO.Chat.
❗️ Perhatian
- Fitur ini tersedia di Dunia di mana elemen multiplayer diterapkan.
👍 Poin untuk referensi
- Anda dapat mengirim/menerima obrolan bahkan di lingkungan editor.
- Hanya pesan obrolan yang dibuat oleh pengguna melalui pengendali yang dapat dikirim/diterima (obrolan cepat, pesan sistem tidak dapat diterima)
Definisi fungsi
class ZepetoChat extends System.Object {
public static get Instance(): ZepetoChatImplementation;
public static get OnReceivedMessage(): UnityEngine_Events.UnityEvent$1<IMessage>;
public constructor();
public static Send($message: string): void;
}- ZepetoChat. Anda dapat menggunakan Send() untuk mengirim pesan tertentu ke jendela obrolan.
- Anda dapat menggunakan ZepetoChat.OnReceivedMessage.AddListener() untuk menentukan acara mana yang akan menerima pesan.
Contoh penggunaan
Tekan tombol 1 dan 2 untuk mengirim pesan yang ditentukan. Buat pesan kustom di inputField untuk mengirim pesan tersebut.

Contoh Pengaturan
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { Button, InputField, Text } from 'UnityEngine.UI';
import { ZepetoChat, MessageType, UserMessage } from 'ZEPETO.Chat';
import { Color } from 'UnityEngine';
export default class CustomChat extends ZepetoScriptBehaviour {
public custom1ChatBtn: Button;
public custom2ChatBtn: Button;
public sendChatBtn: Button;
public resultText: Text;
public inputChatbox: InputField;
Start() {
// Ketika tombol diklik
this.custom1ChatBtn.onClick.AddListener(() => {
// Ubah warna teks
this.resultText.color = Color.magenta;
// Kirim Pesan
ZepetoChat.Send("1");
});
this.custom2ChatBtn.onClick.AddListener(() => {
this.resultText.color = Color.blue;
ZepetoChat.Send("2");
});
this.sendChatBtn.onClick.AddListener(() => {
this.resultText.color = Color.black;
const inputMsg = this.inputChatbox.text;
ZepetoChat.Send(inputMsg);
});
// Menerima pesan
ZepetoChat.OnReceivedMessage.AddListener(msg => {
const userMsg = msg as UserMessage;
this.resultText.text = `[USER - ${userMsg.userName}] - ${userMsg.message}`;
});
}
}
Contoh Hasil Eksekusi
Mengaktifkan/mematikan tombol chat
- Fitur tersedia di Dunia di mana elemen multiplayer diterapkan.
- Anda dapat memeriksa pada tes seluler.
- Deklarasi
public static SetActiveChatUI($value: boolean): void;- Contoh kode
- Tekan tombol tertentu untuk mengubah tombol obrolan menjadi aktif/nonaktif
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { Button } from 'UnityEngine.UI';
import { ZepetoChat, MessageType, UserMessage } from 'ZEPETO.Chat';
export default class ChatController extends ZepetoScriptBehaviour {
public chatUIBtn: Button;
private isChatUIActive : boolean = true;
Start() {
// Ketika tombol diklik
this.chatUIBtn.onClick.AddListener(() => {
// Kirim Pesan
if (this.isChatUIActive) {
ZepetoChat.SetActiveChatUI(false);
this.isChatUIActive = false;
console.log("Chat UI Dinonaktifkan");
}
else {
ZepetoChat.SetActiveChatUI(true);
this.isChatUIActive = true;
console.log("Chat UI diaktifkan");
}
});
}
}
Menentukan pesan yang difilter
- Fitur tersedia di Dunia di mana elemen multiplayer diterapkan.
- Anda dapat memeriksa pada tes seluler.
- Deklarasi
public isFiltered: boolean;- Contoh kode
- Tentukan apakah pesan chat yang diterima adalah pesan yang difilter dan cetak di layar.
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { Text } from 'UnityEngine.UI';
import { ZepetoChat, MessageType, UserMessage } from 'ZEPETO.Chat';
export default class ChatController extends ZepetoScriptBehaviour {
public filterResultText: Text;
Start() {
// Menerima pesan
ZepetoChat.OnReceivedMessage.AddListener(msg => {
const userMsg = msg as UserMessage;
if (userMsg.isFiltered) {
this.filterResultText.text = `Pesan ini telah difilter : ${userMsg.message}`;
} else {
this.filterResultText.text = `Pesan ini tidak difilter : ${userMsg.message}`;
}
});
}
}
