Discord. js embed команда - PullRequest
       4

Discord. js embed команда

0 голосов
/ 02 апреля 2020

Некоторая информация:

Я пытался создать команду, которая заставит бота встраивать заголовок и описание (например,! Embed (Название здесь) | (Описание здесь) ) поэтому любой, у кого есть необходимые разрешения, может использовать бота для встраивания, но я либо очень тупой, либо чрезвычайно настойчивый в так называемом отрыве в моем коде, который ведет в никуда.

Проблема:

Невозможно получить ввод заголовка и ввод описания, чтобы не связываться друг с другом странным образом (вставляя заголовок в описание или наоборот), вертикальная sla sh предполагает быть разделителем между названием и описанием, но я не могу заставить его работать независимо от того, как сильно я напортачу с моим кодом.

Код:

const Discord = require("discord.js");

module.exports.run = async (client, msg, args) => {

    args.slice(0).join(" ")

    let embed = new Discord.MessageEmbed()
    .setColor("RANDOM")
    .setTitle(args[0])
    .setDescription(args.slice(1).join(" "))

    msg.channel.send(embed);
}

module.exports.help = {
    name: "embed"
}

1 Ответ

0 голосов
/ 02 апреля 2020

Ошибка только здесь args.slice(0).join(" ").

Вам необходимо сохранить новое значение args в значение args, чтобы обновить его.

Поэтому измените его на: args = args.slice(0).join(" ")

И обычно это будет отлично работать!

Редактировать:

Вы можете использовать в команде указанную опечатку c, например -command -t Title with multiple words -d Description with multiple words. Тогда вы можете адаптировать свой код.

const Discord = require("discord.js");

module.exports.run = async (client, msg, args) => {

    args.slice(0).join(" ")

    let embed = new Discord.MessageEmbed()
    .setColor("RANDOM")
    .setTitle(args.join(" ").split("-t")[1].split("-d")[0].trim())
    .setDescription(args.join(" ").split("-d")[1].trim())

    msg.channel.send(embed);
}

module.exports.help = {
    name: "embed"
}
...