Este es el código, quiero que escriba el nombre del usuario y luego la palabra de la subasta (ps, soy nuevo en esto)
const Discord = require('discord.js') const client = new Discord.Client() const { MessageEmbed } = require('discord.js'); const channel = client.channels.cache.get('889459156782833714'); client.on("ready", () => { console.log(`Logged in as ${client.user.tag}!`) }) client.on("message", msg => { var message = new Discord.MessageEmbed() .setColor('#FF0000') .setTitle() // want user's name + "Auction" .addField('Golden Poliwag', 'Very Pog', true) .setImage('https://graphics.tppcrpg.net/xy/golden/060M.gif') .setFooter('Poliwag Auction') if (msg.content === "d.test") { msg.reply(message) } })Puede acceder al nombre de usuario del usuario usando msg.author.tag . Asi que. la forma de usar la etiqueta del usuario en una inserción sería:
const { MessageEmbed, Client } = require("discord.js"); const client = new Client(); const channel = client.channels.cache.get("889459156782833714"); client.on("ready", () => { console.log(`Logged in as ${client.user.tag}!`); }); client.on("message", (msg) => { var message = new Discord.MessageEmbed() .setColor("#FF0000") .setTitle(`${msg.author.tag} Auction`) .addField("Golden Poliwag", "Very Pog", true) .setImage("https://graphics.tppcrpg.net/xy/golden/060M.gif") .setFooter("Poliwag Auction"); if (msg.content === "d.test") { msg.reply(message); } });Le sugiero que lea la documentación de discord.js , casi todo lo que necesita para interactuar con Discord API es desde allí.
No puede controlar el bot si no inicia sesión en él. Obtenga el token del bot del Portal de desarrolladores e inicie sesión en su bot agregando client.login('<Your token goes here>') en su proyecto.
No puede obtener el canal si no está almacenado en caché en el cliente. Debe obtenerlo utilizando el método fetch() del administrador de canales del cliente:
const channel = await client.channels.fetch('Channel ID goes here');P/s: await solo está disponible en la función asíncrona
El evento de message está en desuso si está utilizando discord.js v13 . Utilice el evento messageCreate en su lugar.
Puede acceder al usuario que envió el mensaje a través del objeto msg : msg.author . Si desea su etiqueta, puede obtener la propiedad de la tag del usuario: msg.author.tag , o nombre de usuario: msg.author.username o incluso ID de usuario: msg.author.id . Para obtener más información sobre la clase de mensaje de discordia, lea aquí .
Las opciones de respuesta para el mensaje no es un mensaje. Está intentando responder el mensaje del autor con otro mensaje que es incorrecto. Reemplace las opciones de respuesta con un objeto que incluya embeds :
msg.reply({ embeds: [ // Your array of embeds goes here ] });De todo eso, ahora tenemos el código final:
const { Client, MessageEmbed } = require('discord.js'); const client = new Client(); client.on("ready", () => {console.log(`Logged in as ${client.user.tag}!`)}); client.on("messageCreate", async (msg) => { const channel = await client.channels.fetch('889459156782833714'); const embed = new Discord.MessageEmbed() .setColor('#FF0000') .setTitle(`${msg.author.tag} Auction`) .addField('Golden Poliwag','Very Pog',true) .setImage('https://graphics.tppcrpg.net/xy/golden/060M.gif') .setFooter('Poliwag Auction'); if (msg.content === "d.test") { msg.reply({ embeds: [ embed ], }); } }); client.login('Your bot token goes here');Ahora su bot puede responder al usuario de comando con una inserción enriquecida.