Answer the question
In order to leave comments, you need to log in
When you click on the button made a nickname in the form, the role of the nickname in the form is taken from all previous users?
I think you need to make a variable that says that the mentioned user is in the message and it’s tedious to take it from him, and not from everyone, but how to do it?
The code:
const Discord = require("discord.js");
const { MessageEmbed } = require("discord.js");
const { Color } = require("../../config.js");
disbut = require('discord-buttons');
module.exports = {
name: "addnick",
aliases: ["an"],
description: "add role!",
usage: "addnick <Mention User> | <Reason>",
run: async (client, message, args) => {
//Start
message.delete();
if (!message.member.hasPermission("MANAGE_SERVER"))
return message.channel.send(
`У вас нет разрешения на использование этой команды!`
);
let Member =
message.mentions.members.first() ||
message.guild.members.cache.get(args[0]);
if (!Member) return message.channel.send(`Пожалуйста, упомяните пользователя!`);
let Role = message.guild.roles.cache.find(role => role.name === "!Ник по форме!").id;
if (!Role)
return message.channel.send(
`Создайте роль !Ник по форме!`
);
if (Member.roles.cache.has(Role)) {
return message.channel.send(`Участник уже имеет роль !Ник по форме!`);
}
await Member.setNickname("Nick_Name|(Наст. Имя по желанию)");
const Btn = new disbut.MessageButton()
.setStyle('green')
.setEmoji('877916396531626024')
.setLabel('Сделал ник по форме!')
.setID('nicknorm')
client.on('clickButton', async (button) => {
if(button.id == 'nicknorm') {
const rolenorm = button.guild.roles.cache.get("871472582409474128")
const member = button.clicker.member
await Member.roles.remove(rolenorm)
let EmbedYes = new MessageEmbed()
.setColor("2ECC71")
.setTitle(`Сделал ник по форме`)
.addField(`Moderator`, `<@${message.author.id}> ID: (${message.author.id})`)
.addField(`Пользователь:`, `<@${Member.id}> ID: (${Member.user.id})`)
.setTimestamp();
const Yes = new disbut.MessageButton()
.setStyle("grey")
.setEmoji('874359215572004894')
.setLabel("Пользователь сделал ник по форме!")
.setID('nicknorm')
.setDisabled(true);
button.message.edit({embed: EmbedYes, component: Yes})
Member.send(
new MessageEmbed()
.setColor("2ECC71")
.setTitle(`Спасибо что сделали ник по форме!`)
.addField(`Moderator`, `<@${message.author.id}> ID:(${message.author.id})`)
.setTimestamp()
.setFooter(`С уважением Diamond CLAN BOT | 侍`)
);
}
})
let Embed = new MessageEmbed()
.setColor("E74C3C")
.setTitle(`Не имеет ник по форме!`)
.addField(`Moderator`, `<@${message.author.id}> ID: (${message.author.id})`)
.addField(`Пользователь:`, `<@${Member.id}> ID: (${Member.user.id})`)
.addField("Причина", "Ник не по форме `Nick_Name|(Реальное имя по желанию)`")
.setTimestamp();
Member.send(
new MessageEmbed()
.setColor("E74C3C")
.setTitle(`Сделайте ник по форме!`)
.addField(`Moderator`, `<@${message.author.id}> ID:(${message.author.id})`)
.addField(`Форма ника`, "`Nick_Name |(Реальное имя по желанию)`")
.setTimestamp()
.setFooter(`С уважением Diamond CLAN BOT | 侍`)
);
if (Role && !Member.roles.cache.has(Role)) {
Member.roles.add([Role]);
return message.channel.send(Embed, { component: Btn });
} else {
return message.channel.send(`Что-то пошло не так, попробуйте позже!`);
}
//End
}
};
Answer the question
In order to leave comments, you need to log in
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question