我向我的不和谐机器人授予了管理员权限,并将该角色置于其他角色之上,但是,即使我进行了检查,似乎该机器人也不具有更改昵称的权限。
if (msg.content === '!ping') {
msg.reply('Pong!')
msg.reply(msg.author.username)
msg.member.setNickname('RandomName').catch(e=>console.log(e))
console.log(msg.guild.members.find("id",client.user.id).hasPermission("MANAGE_NICKNAMES"));
}
如果得到我的许可,它会给我答案true
,但会给我错误:DiscordAPIError: Missing Permissions
是setNickname命令。
答案 0 :(得分:0)
漫游器无法更改公会所有者或具有较高角色的成员的昵称。请先检查以确保用户不是所有者。
try {
if (msg.guild.me.permissions.missing('MANAGE_NICKNAMES')) return msg.reply('I\'m missing permissions.');
if (msg.author.id === msg.guild.ownerID) return msg.reply('I can\'t change your nickname.');
msg.member.setNickname('test');
} catch(err) {
console.error(err);
}