Discord.js бот не имеет права управлять никами - PullRequest
0 голосов
/ 13 мая 2019

Я дал своему боту разногласий разрешение администратора и поставил эту роль выше любой другой роли, но похоже, что бот не имеет права менять NickNames, даже если я проверяю его.

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.

1 Ответ

0 голосов
/ 13 мая 2019

Бот не может изменить псевдоним владельца гильдии или члена с более высокой ролью. Убедитесь, что пользователь не является первым владельцем.

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);
}
...