Рубрики
Без рубрики

Primeros Pasos en Discord. JS: Аргумент

En ese corto pero potente post hablaremos de cómo usar armeryos con tu bot discord, y para conc … Tagged с узлом, NPM, JavaScript, Discord.

En ese corto pero potente post hablaremos de cómo usar armeryos con tu bot discord, y para concirluir tendrás el código финал.

Si necesitas ayuda sobre cómo crear el bot en primer lugar, revisa revisa este post

¿Qué Son Los Armosos?

Сын Параметрос Адиционалес USADOS PARA VARIAR LAS Funciones del Comando. Esto nos sirve para que el bot tenga mejor capacidad de respuesta con algunos comandos.

Por Ejemplo, Supongamos Que Tenemos un comando para buscar páginas en Google (Este ejemplo lo haremos en un futuro post):

SepeAndolo como un Аррегло Tenemos 4 Parámetros: ['search', 'documentación', 'de', 'discordjs'] Анкет El Primero Es El Nombre del Comando, El Cual Haremos Que el Bot Omita, Y El Resto Son Los Armosos.

Para Que el Bot Reconozca Los Parámetros, Tendremos Que Poner estas líneas de Código explicadas con Comentarios:

// Separamos el prefix y el nombre del comando de los argumentos
const commandName = message.content.slice(prefix.length);
// Quitamos los espacios en blanco de los extremos de cada argumento
const textArgs = commandName.trim();
// Y los separamos cada uno con expresiones regulares
const args = textArgs.split(/ +/g);

// Creamos una variable que retornará el nombre 
// del comando, en minúsculas y quitando el prefix
const command = args.shift().toLowerCase();

Con esto, podemos Reducir el Código a la hora de crear un comando:

if(command === 'ping') {
    message.channel.send('PONG');
}

Bucle Infinito

EL Bot Puede Detectar Mensajes de Otros Bots, включая Sí Mismo. Por lo que generaría un Bucle Infinito de Respuestas.

Para evitar esto tenemos que usar las siguientes líneas de código:

// Si el mensaje no empieza por el prefix, no retornará nada
if (!message.content.startsWith(prefix)) return; 
// Si el autor del mensaje es un bot, no retornará nada
if (message.author.bot) return;

Кодиго финал

Acá esta una manera más usmestificada:

const message.content.slice(prefix.length).trim().split(/ +/g);
const command = args.shift().toLowerCase();

Ejemplos

Ya con esta base podemos crear el típico comando Скажи :

// usamos el método .join() de JavaScript para Arrays
const texto = args.join(' ');

message.channel.send(texto);

Si Quieres validar que el texto no esté acizyo, agrega esta condicional justo después de la constante texto:

if(!texto) return message.channel.send('Por favor, escribe un texto');

Espero Que Este Post Te Haya Ayudado A Mejorar Tu Bot discord y Tus habilidades en JavaScript. Нет olvides seguirnos en instagram como @somos.devs Анкет

Счастливого кодирования!

Оригинал: “https://dev.to/somosdevs/argumentos-para-tu-bot-en-discord-45n2”