C
C
CHROME0012021-08-20 09:26:57
Node.js
CHROME001, 2021-08-20 09:26:57

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 question

Ask a Question

731 491 924 answers to any question