В настоящее время я нахожусь в процессе написания функции, которая будет создавать новую роль пользователя, назначать случайный цвет и имя этой роли после пользователя, который выполнил команду. Код выглядит следующим образом:
message.guild.createRole({
data: {
name: 'Super Cool People',
color: 'BLUE',
},
reason: 'we needed a role for Super Cool People',
})
.then(console.log)
.catch(console.error);
Что, как некоторые из вас могут знать, это прямо из документации для CreateRole. Тем не менее, проблемы, с которыми я сталкиваюсь, состоят в том, что она успешно создает роль, но имя роли - «новая роль», а не имя, указанное выше. На цвет роли это не влияет. Журналы показывают:
2020-04-16T23:01:35.133373+00:00 app[worker.1]: id: '700481043597099059',
2020-04-16T23:01:35.133373+00:00 app[worker.1]: name: 'new role',
2020-04-16T23:01:35.133374+00:00 app[worker.1]: color: 0,
2020-04-16T23:01:35.133374+00:00 app[worker.1]: hoist: false,
2020-04-16T23:01:35.133374+00:00 app[worker.1]: position: 1,
2020-04-16T23:01:35.133374+00:00 app[worker.1]: permissions: 104324673,
2020-04-16T23:01:35.133374+00:00 app[worker.1]: managed: false,
2020-04-16T23:01:35.133374+00:00 app[worker.1]: mentionable: false
Разрешения по умолчанию, здесь ничего особенного не происходит. Пользователи, которые будут иметь доступ к этой команде, уже будут иметь достаточные разрешения, назначенные для более высокой упорядоченной роли. Однако проблема заключается в том, что указанная роль c не названа как предназначенная и цвета не назначены. использование message.guild.createRole, кажется, вписывается в границы, которые я использую, поскольку оно находится в сообщении, ожидают асинхронного вызова c. Почему это?