const fs = require('fs'); const path = require('path'); module.exports = { name: 'reload', description: 'Recharge une commande spĂ©cifique', emote: '🔄', utilisation: 'reload ', category: 'botcontrol', async execute(message, args) { const commandName = args[0].toLowerCase(); const command = message.client.commands.get(commandName); if (args[0].toLowerCase() === 'all') { message.reply('Toutes les commandes vont ĂȘtre rechargĂ©es....') .then(async sendmessage => { message.client.commands.clear(); let count = 0; const loadCommands = (dir) => { fs.readdirSync(path.join(__dirname, dir)).forEach(file => { const filePath = path.join(__dirname, dir, file); if (fs.statSync(filePath).isDirectory()) { count += loadCommands(path.join(dir, file)); } else if (file.endsWith('.js')) { try { delete require.cache[require.resolve(filePath)]; const command = require(filePath); command.file = filePath; message.client.commands.set(command.name, command); if (command.aliases) { command.aliases.forEach(alias => { message.client.commands.set(alias, command); }); } count++; } catch (error) { console.error(`Failed to load file: ${filePath}`); console.error(error); } } }); } loadCommands('../../commands'); await sendmessage.edit('Toutes les commandes ont Ă©tĂ© rechargĂ©es.'); }) .catch(error => { console.error('Erreur lors de l\'envoi du message de rechargement:', error); message.reply('Une erreur est survenue lors de l\'envoi du message de rechargement.'); }); }else { if (!command) { return message.reply('Cette commande n\'existe pas.'); } const commandFile = command.file; delete require.cache[require.resolve(commandFile)]; try { const newCommand = require(commandFile); newCommand.file = commandFile; message.client.commands.set(newCommand.name, newCommand); message.reply(`La commande ${commandName} a Ă©tĂ© rechargĂ©e.`); } catch (error) { console.error(`Erreur lors du rechargement de la commande ${commandName}:`, error); message.reply(`Une erreur est survenue lors du rechargement de la commande: ${error.message}`); } } }, };