我一直在尝试使用 Javascript Discord Bot 制作基于文本的游戏,但我不知道如何让机器人在用户发送反应时发送消息(即玩家对机器人消息做出反应某个表情符号)。
{{1}}
有人可以帮助纠正错误吗?
答案 0 :(得分:1)
我不确定是否有专门的事件,但您可以使用 raw
捕获反应事件:
const events = {
MESSAGE_REACTION_ADD: "messageReactionAdd",
MESSAGE_REACTION_REMOVE: "messageReactionRemove"
};
client.on("raw", async (event, client) => {
if (!events.hasOwnProperty(event.t)) return;
const { d: data } = event;
const message = await client.channels.cache.get(data.channel_id).messages.fetch(data.message_id);
if (event.d.emoji.name !== "?"){
message.channel.send("You walk into the labyrinth");
}
// ...
if (event.t === "MESSAGE_REACTION_ADD"){
// Reaction was added
}
else if (event.t === "MESSAGE_REACTION_REMOVE"){
// Reaction was removed
}
});
编辑:看起来像 there is a dedicated event。