如何解决Discord.js |如何停止awaitReactions
因此,我已经做出了反应。 10000 ms之后,赠品结束,一切正常。现在,我想在10000毫秒之前停止赠品,因为我添加了“赠品结束”命令。我还有一个问题,如果我(没有机器人程序)的反应比胜利者少,那么会发生以下情况:@ x,@ y,@ z,...,(3个反应和7个胜利者)。我可以剪掉吗?
const Discord = require('discord.js');
const bot = new Discord.Client();
bot.channels.get(giveawayChannelid).fetchMessage(messageID)
.then(message => {
const filter = (reaction,user) => {
return reaction.emoji.name === '?' && user.id != bot.user.id;
};
message.awaitReactions(filter,{time: 10000,errors: ['time'] })
.catch(collected => {
const reaction = collected.first();
winnersEnd=reaction.users.filter((user) => !user.bot).random(winners);
});
});
解决方法
您应该使用全局变量,当赠品开始时设置为true,停止时设置为false,以及锁定条件,可能在过滤器回调?中。 还应该在消息awaitReaction选项中使用最大设置
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。