const config = require("./config.json")
const { Client, Intents } = require('discord.js');
const client = new Client({ intents: [Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES] });
client.on('ready', () => {
console.log(`бот запущен`);
});
client.on('messageCreate', message => {
let array = message.content.split(" ");
if (array[0] === "!role") {
let member = message.mentions.members.first() || message.guild.members.cache.get(array[1].replace(/[^\d]/g, ''))
let role = message.guild.roles.cache.find(r => r.name ===
"название_роли"); // или message.guild.roles.cache.get("ID_роли"), если вы хотите обнаружить роль по её ID.
member.roles.add(role).then((Member) => {
setTimeout(() => {
Member.roles.remove(role)
}, Number(array[2]));
})
}
});
client.login(config.token);
array
и разбито на части:["!команда", "аргумент1", "аргумент2" и так далее...]
!role @user время
, array
будет выглядеть как ["!role", "<@id_юзера>", "время"].array[2]
array[2]
. правила()
- значит дальнейшие действия будем совершать именно в рамках этой функции.exampleEmbed
- в которой, грубо говоря, находится embed.mess.author.send(...)
let adminRole = // здесь любой вариант из описания ответа
if (!mess.member.roles.cache.has(adminRole)) return;
/*
! вначале означает "обратное действие".
если бы его не было, команда бы сработала только для тех, у кого нет роли.
*/
Мне необходимо, чтобы к данному сообщению (которое тагает нужную роль) добавлялась эмоция, нажав которую, бот отправлял сообщения.
channel
стоит вначале для примера, вместо него вы можете использовать что угодно. 3.4. Следует помнить о том, что сервис вопросов и ответов «Хабр Q&A» не является форумом, чатом или социальной сетью. Следует избегать употребления речевых оборотов, характерных для этих типов ресурсов. Вопрос и его описание не должны содержать приветствий и прочих «лирических отступлений».
id
- ID участника сервера (ID сервера для @ everyone) или ID роли, для которой вы устанавливаете привилегии.deny/allow
- запретить/разрешить какие-либо привилегии для пользователя или роли.если вы хотите добавить/изменить привилегии для пользователя или роли отдельно: