blx-discord_commands

Un paquete que te ayuda mucho a crear comandos para discord!

Usage no npm install needed!

<script type="module">
  import blxDiscordCommands from 'https://cdn.skypack.dev/blx-discord_commands';
</script>

README

Este paquete requiere una connección de mongodb obligatoria, no intentes usarlo sin ello

Discord Package Size Paypal Twitter

NPM

Contenido

Setup (Codigo principal)

const DiscordJS = require('discord.js')
const blxDC = require('blx-discord_commands')

const client = new DiscordJS.Client()

blxDC(client, {
  commands: "commands", // Directorio de comandos
  database: "URI", // URI de la database en mongodb

  prefix: "!", // Prefijo por defecto del bot
  
  disable_commands: [
    'help', // Quita esto de la lista para habilitar el comando, dejalo para deshabilitarlo
    'roles', // Quita esto de la lista para habilitar el comando, dejalo para deshabilitarlo
    'prefix', // Quita esto de la lista para habilitar el comando, dejalo para deshabilitarlo
  ],
  errors: { // Mensaje de un error, ej: te salta un error del cooldown
    serversOnly: 'Solo servers`', // Si no estas en algun server del bot
    ownersOnly: 'Solo dueños`', // Si no eres dueño del bot
    permissions: 'Permisos insuficientes`', // Si te faltan permisos
    cooldown: 'Espera `{TIME}`', // Si estas en cooldown [{TIME} => tiempo restante del cooldown]
    args: 'Usa `{ARGS}`', // Si no cumples los argumentos mínimos y/o máximos [{ARGS} => lo q tengas escrito en la propiedad 'joinArgs']
  },

  owners: [], // Dueños del bot (ids)
  servers: [], // Servidores del bot (ids)
})

client.login('TOKEN DE SU BOT')

Setup (Comandos)

En la carpeta de comandos creas un nuevo archivo que contenga:

let filename = __filename.slice(__dirname.length + 1, -3)

module.exports = {
  ignore_bots: false, // Si el comando lo puede usar un bot (false) o si no puede (true)
  ownersOnly: false, // Si el comando solo puede ser usado por los dueños del server (true) de lo contrario (false)
  serversOnly: false, // Si el comando solo puede ser usado en los servidores del bot (true) de lo contrario (false)

  permissions: [], // Permisos necesarios para utilizar el comando, EJ: ['ADMINISTRATOR'] (https://discord.com/developers/docs/topics/permissions)
  cooldown: -1, // El delay antes de volver a usar el comando (-1 para desactivarlo)

  name: '', // El nombre del comando (filename para que tenga el nombre del archivo)
  aliases: [''], // Los aliases del comando (es otra forma de ejecutar el comando)

  category: '', // Categoría del comando
  description: '', // Descripción del comando

  joinArgs: '', // Argumentos ddel comando, EJ: '<tag>'
  minArgs: 0, // Argumentos mínimos requeridos del comando
  maxArgs: -1, // Argumentos máximos del comando
  


  callback: async ({ // Codigo del comando
    client, // Cliente de tu bot
    args, // Argumentos escritos
    msg, // Objeto 'message' de DiscordJS
    prefix, // Prefijo del bot
    _commands, // Lista de comandos
  }) => {
    msg.channel.send('Comando ejecutado') // Codigo de ejemplo
  },
}

Ejemplos

Como usar la propiedad '_commands':

let filename = __filename.slice(__dirname.length + 1, -3)

module.exports = {
  name: filename,

  callback: async ({
    _commands,
  }) => {
    for (const cmd of _commands) {
   
      console.log(cmd)
    }
  },
}

Caracteristicas

  • Constructor de comandos

    • Prefijo por defecto
    • Database
    • Carpeta
    • Mensajes de errores
    • Desactivar comandos por defecto
    • Dueños del bot
    • Servidores del bot
  • Propiedades de comandos

    • Ignorar bots
    • Solo servidores del bot
    • Solo dueños del bot
    • Permisos
    • Cooldown
    • Nombre
    • Aliases
    • Categoría
    • Descripción
    • Argumentos esperados, mínimos y máximos
    • Callback (codigo del comando)
  • Funciones para comandos

    • Roles permitidos (cofiguralos con el comando 'roles')
    • Lista de comandos (propiedad: "_commands")
  • Comandos por defecto (Se pueden desactivar)

    • 'roles' (configura los roles permitidos de un comando)
    • 'prefix' (cofigura el prefijo del servidor)
    • 'help' (obtiene información de comandos)