fenixenbot.js
Version:
Libreria Creacion De Bots De Discord
53 lines (46 loc) • 1.79 kB
JavaScript
const { Collection } = require('discord.js');
const loadFiles = require('../Utils/LoadFiles');
const Color = require('../Utils/Color');
const path = require('path');
function handlePrefixCommands(client, prefixCommandsPath) {
client.prefixCommands = new Collection();
const prefixCommandsFiles = loadFiles(prefixCommandsPath);
for (const file of prefixCommandsFiles) {
try {
const filePath = path.resolve(prefixCommandsPath, file);
delete require.cache[require.resolve(filePath)];
const commandDef = require(filePath);
if (
!commandDef ||
!commandDef.name ||
typeof commandDef.execute !== 'function'
) {
console.warn(
Color.brightred,
`Archivo de comando de prefijo ignorado debido a estructura inválida en:${Color.brightmagenta} ${file}.${Color.brightred} Asegúrate de exportar una definición de comando de prefijo válida (creada con prefixCommands() o commands() sin 'description' y sin 'type').`,
Color.reset
);
continue;
}
client.prefixCommands.set(commandDef.name, commandDef);
console.log(
Color.brightmagenta,
`Comando de prefijo cargado desde archivo:${Color.brightgreen} ${commandDef.name}`,
Color.reset
);
if (commandDef.aliases && Array.isArray(commandDef.aliases)) {
commandDef.aliases.forEach((alias) => {
client.prefixCommands.set(alias, commandDef);
});
}
} catch (error) {
console.error(
Color.brightred,
`Error al cargar el comando de prefijo desde${Color.brightmagenta} ${file}:`,
Color.reset,
error
);
}
}
}
module.exports = handlePrefixCommands;