【发布时间】:2019-10-11 05:27:18
【问题描述】:
我在编写我的机器人时稍作休息,我一直在尝试添加模块来制作经济型的东西。我遇到了一些问题,所以我去检查“清除”命令是否仍然有效。我最初编写的代码没有异步函数,但现在我正在使用它,我认为这可能导致了问题? 想知道是否有人知道如何修复它,感谢您查看此问题。
ban/kick 命令也根本不起作用,所以如果有人可以看看那些?
对于代码,我使用了互联网上的一些教程和指南,我认为其中一些可能干扰了已经编写的内容。
if (command === 'clear') {
const deleteCount = parseInt(args[0], 10);
if(!deleteCount || deleteCount < 2 || deleteCount > 300)
return message.reply('Please provide a number between 2 and 300 for the number of messages to delete.')
const fetched = await message.channel.fetchMessages({deleteCount});
message.channel.bulkDelete(fetched)
.catch(error => message.reply(`I couldn't delete the messages because of: ${error}`));
}
//kick command
if (command === 'kick') {
const user = message.mentions.users.first();
if (!message.guild.me.hasPermission(`KICK`)) return message.reply('You have insufficient permissions.')
if(!member.kickable) return message.reply('I cannot kick this user!');
if(user){
const member = message.guild.member(user);
if(member){
member.kick('You have been kicked.').then(() =>{
message.reply(`Successfully kicked ${user.tag}.`);
}).catch(err =>{
message.reply('I was unable to kick the specified member.');
console.log(err);
});
} else {
message.reply("That user is not in this server.")
}
} else {
message.reply('You need to specify a user!')
}
}
运行命令时,比如~clear 3,经常会说:
“我无法删除邮件,因为:DiscordAPIError:您只能批量删除 14 天以下的邮件。”即使之前的消息只有几分钟/几秒。
其他时候使用~clear 3(通常是在上述消息发送后几分钟),它会删除不止三个。
当使用~kick时,它根本不会响应。
【问题讨论】:
-
你试过
message.channel.fetchMessages({limit: deleteCount});吗?
标签: javascript discord.js