Добавить автора в команду say

#discord #discord.js

#Discord #discord.js

Вопрос:

Я хочу добавить в свою команду, скажем, автора сообщения. Что-то вроде этого: Привет, мир — @Author Я пытался сделать это в одиночку, но у меня не получилось, надеюсь, вы сможете мне помочь.) Я действительно не понимаю, почему это не сработает, я пытался многое изменить, но он по-прежнему выдает мне сообщение без автора

Мой текущий код:

 const Command = require('../structures/command.js');
const SubCommand = require('../structures/subcommand.js');

module.exports = class Say extends Command {

  constructor(client) {
    super(client);
    this.name = "say";
    this.subcommands = [new EmbedSay(client, this)];
  }

  run(message, args, commandLang, databases, lang) {
    if (message.member.hasPermission('ADMINISTRATOR')) {
      message.channel.send(args.join(' '));
      message.delete();
    } else {
      var embed = this.client.getg1cuEmbed(message);
      embed.setDescription(lang.missing_manageguild_permission);
      embed.setColor(this.client.config.colors.error);
      message.channel.send(embed);
    }
  }

}

class EmbedSay extends SubCommand {
  constructor(client, parentCommand) {
    super(client, parentCommand);

    this.name    = "embed";
    this.aliases = ["--embed"];
  }

  run(message, args, commandLang, databases, lang) {
    if (message.member.hasPermission('ADMINISTRATOR')) {
      try {
        var json = JSON.parse(args.join(' '));
      } catch (e) {
        var embed = this.client.getg1cuEmbed(message);
        embed.setColor(this.client.config.colors.error);
        embed.setTitle(commandLang.json_error_title);
        embed.setDescription(commandLang.json_error_desc);
        message.channel.send(embed);
        return;
        
      }
      message.delete();
      if (json.content) {
        message.channel.send(json.content, json);
      } else {
        message.channel.send(json);
      }
    } else {
      var embed = this.client.getg1cuEmbed(message);
      embed.setDescription(lang.missing_manageguild_permission);
      embed.setColor(this.client.config.colors.error);
      message.channel.send(embed);
    }
  }
}
  

Комментарии:

1. Вы можете проверить автора следующим образом: `Hello World - <@${message.author.id}>`

Ответ №1:

Чтобы получить автора сообщения в discord.js просто:
Чтобы получить идентификатор: message.author.id
Чтобы получить тег: message.author.tag
Чтобы получить URL-адрес: message.author или '<@!' message.author.id '>'

Ответ №2:

я на самом деле не поклонник discord.js но я знаю одну вещь, user.mention она всегда работает, и в ней упоминается пользователь, который ввел команду. member.mention также может работать.

Если это не сработает, я прошу прощения за то, что сбил вас с пути, но, возможно, это поможет: https://discord.js.org/#/docs/main/stable/general/welcome