【发布时间】:2021-04-27 18:12:03
【问题描述】:
我正在为我的服务器编写 Discord 机器人。我想为我的机器人添加一个命令,该命令将清除一个文本通道,并且只允许具有 Owner、Admin、Moderator 角色的人。
在代码中,它有if(!message.member.roles.cache.some(r => r.name === "**Owner**"),我有这个角色但我不能删除消息。但是当我给我 3 个角色(所有者、管理员和版主)时,我可以使用它。
所以我需要修复:3 个角色中的 1 个仍然可以使用它。
代码在这里:
case 'clear':
if(!args[1])
return message.reply('Please specify the number of messages to clear `e.g. !clear 10`')
.then(message => message.delete({timeout: 3500}));
if(!message.member.roles.cache.some(r => r.name === "Owner") ||
!message.member.roles.cache.some(r => r.name === "Admin") ||
!message.member.roles.cache.some(r => r.name === "Moderator"))
return message.reply('You do not have permissions to clear!')
.then(message => message.delete({timeout: 3500}));
message.channel.bulkDelete(args[1]);
break;
【问题讨论】:
标签: discord discord.js bots