在消息对象上设置自定义键时的行为异常

时间:2018-07-22 07:40:12

标签: javascript discord discord.js

我正在尝试在discord机器人中设置自定义键并将其附加到Discord Message对象上,但是它似乎仅在60%到80%的时间内都能正常工作,这确实破坏了我的工作-流在这里。

本质上,我想做的是确保只有指定的消息才是可以使某个功能起作用的人员可以响应的消息,但是,这是非常不可靠的,而且似乎消息对象有时会被重置。

这是我正在尝试做的一个示例,但又不会太复杂。现在我去了很多人,没有人能弄清楚出什么问题了,或者为什么...

bot.on("message", async message => {
  if (message.content === `!test`) {
    message.channel.send("This is a test message!")
      .then(msg => {
        msg.cookie = true;
        return msg;
      })
      .then(msg => {
        console.log(msg.cookie);
        return msg;
      })
      .then(async msg => {
        await msg.react('');
      });
  };
});

bot.on("messageReactionAdd", async(messageReaction, user) => {
  let msg = messageReaction.message;
  if (msg.cookie) {
    console.log("The cookie, it's there!");
  } else {
    console.log("Uh oh... the cookie is missing!");
  };
});

现在,如果我做!test 15次。每次它将true从第二个.then登录到控制台时,但平均只有10到13次,我会得到The cookie, it's there!,并且登录messageReaction.message后,似乎好像对象已完全重置自己。如果有人可以帮助我弄清楚这一切,那将是惊人的。谢谢。

使用discord.js@11.3.2。

IMAGE OF SUCCESSFUL FAILURE

0 个答案:

没有答案