快速聊天
4 分
ZepetoWorldContent API 中与 QuickMessage 相关的功能可用于实现世界内发送和接收消息的能力。

- 此功能可在实现多人游戏元素的世界中使用。
要使用 QuickMessage 功能,您必须创建如下的导入语句。
import { ZepetoWorldContent, WorldMultiplayChatContent, QuickMessage } from 'ZEPETO.World';
ZepetoWorldContent API 提供以下与 QuickMessage 相关的功能。
API | 描述 |
|---|---|
ZepetoWorldContent.GetQuickMessageList($onComplete: System.Action$1<QuickMessage[]>, $onError: System.Action$1) | 导入当前世界的 QuickMessage 列表。 (导入与设备语言相对应的内容。) |
可以使用如下所示的代码。
ZepetoWorldContent.GetQuickMessageList(quickMessageList: QuickMessage[] => {
// 处理 QuickMessage
}, err => {
});
WorldMultiplayChatContent API 使多玩家中的快速消息同步成为可能。
使用以下功能时,聊天消息会发送并在聊天窗口中输出。此外,如果在 ZepetoPlayers 中启用 BubbleChat,您会看到应用程序中弹出一个对话气泡。
API | 描述 |
|---|---|
SendQuickMessage($quickId: string):void; | 将输入的 quickId 消息发送到多玩家服务器。 |
❗️ 注意 如果 quickId 的值与现有的 QuickMessage 列表不同,则不会发送。
QuickMessage 类由以下组件组成:
class QuickMessage extends System.Object {
public id: string;
public message: string;
}
以下是一个完整的示例代码,使用了 QuickMessage 功能的函数。
import { Button } from 'UnityEngine.UI';
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { ZepetoWorldContent, WorldMultiplayChatContent, QuickMessage } from 'ZEPETO.World';
export default class QuickChat extends ZepetoScriptBehaviour {
public quickChatBtn: Button;
Start() {
ZepetoWorldContent.GetQuickMessageList(quickMessageList => {
quickMessageList.forEach((quickMessage: QuickMessage, index: number, array: QuickMessage[]) => {
console.log(`id = ${quickMessage.id}, message = ${quickMessage.message}`);
});
}, err => {
console.log(`QuickMessage 错误: ${err}`);
});
// 发送 "Hi" 消息
this.quickChatBtn.onClick.AddListener(() => {
this.OnClickQuickMessageButton("zw_quickchat_preset_001");
});
}
private OnClickQuickMessageButton(quickId: string) {
WorldMultiplayChatContent.instance.SendQuickMessage(quickId);
}
}