Я пытаюсь сделать, когда пользователь отправляет команду, они могут менять роли по желанию. Роли - просто цвета для сервера, для которого я делаю это. Часть, которая имеет проблемы, является первой частью перед частью "var args". По сути, проблема заключается в том, что часть, которая находит все роли, в которых в данный момент находится пользователь, и удаляет их, прежде чем перейти к добавлению новой роли.
Я заставил бота работать над добавлением ролей. Тогда я понял, что мне нужно удалить все старые роли, чтобы новый цвет (который может быть ниже в иерархии) мог не отображаться.
Ошибка в коде ниже: «(узел: 181764) UnhandledPromiseRejectionWarning: ReferenceError: r не определено». Я взял эту часть сразу же из anidiotsguide. Я учу JS как есть. Я подумал, что этот небольшой проект будет простым, чтобы дать мне небольшой опыт работы с discord.js. Извиняюсь, если я выгляжу полным новичком. Я. lol Заранее признателен за помощь.
bot.on('message', async (message) => {
if(message.content.toLowerCase().startsWith("!colorme"))
if(message.member.roles.some(r => ["blue", "red", "yellow"].includes(r.name)))
await(message.member.removeRole(r.name));
{
var args = message.content.toLowerCase().split(" ");
console.log(args);
if(args[1] === "blue")
{
var role = message.guild.roles.find('name', 'blue');
console.log("Role found!");
message.member.addRole(role.id);
message.channel.send('Role successfully added!');
}
else if(args[1] === 'red')
{
addUserRole('red', message);
message.channel.send('Role successfully added!');
}
else if(args[1] === 'yellow')
{
addUserRole('yellow', message);
message.channel.send('Role successfully added!');
}
};
});
function addUserRole(roleName, message)
{
var role = message.guild.roles.find('name', roleName);
message.member.addRole(role.id);
return;
}