diff options
author | sowgro <tpoke.ferrari@gmail.com> | 2023-09-02 19:12:47 -0400 |
---|---|---|
committer | sowgro <tpoke.ferrari@gmail.com> | 2023-09-02 19:12:47 -0400 |
commit | e4450c8417624b71d779cb4f41692538f9165e10 (patch) | |
tree | b70826542223ecdf8a7a259f61b0a1abb8a217d8 /regcmd.js | |
download | sowbot3-e4450c8417624b71d779cb4f41692538f9165e10.tar.gz sowbot3-e4450c8417624b71d779cb4f41692538f9165e10.tar.bz2 sowbot3-e4450c8417624b71d779cb4f41692538f9165e10.zip |
first commit
Diffstat (limited to 'regcmd.js')
-rw-r--r-- | regcmd.js | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/regcmd.js b/regcmd.js new file mode 100644 index 0000000..7dd4381 --- /dev/null +++ b/regcmd.js @@ -0,0 +1,53 @@ +const { REST, Routes } = require('discord.js'); +const { clientId, token } = require('./config.json'); +const fs = require('node:fs'); +const path = require('node:path'); +global.data = require('./data.js'); + +const commands = []; +// Grab all the command files from the commands directory you created earlier +const foldersPath = path.join(__dirname, 'commands'); +const commandFolders = fs.readdirSync(foldersPath); + +// for (const folder of commandFolders) { + // Grab all the command files from the commands directory you created earlier + // const commandsPath = path.join(foldersPath, folder); + const commandsPath = foldersPath; + const commandFiles = fs.readdirSync(commandsPath).filter(file => file.endsWith('.js')); + // Grab the SlashCommandBuilder#toJSON() output of each command's data for deployment + for (const file of commandFiles) { + const filePath = path.join(commandsPath, file); + const command = require(filePath); + if ('data' in command && 'execute' in command) { + commands.push(command.data.toJSON()); + // console.log(command.data.toJSON()) + } else { + console.log(`[WARNING] The command at ${filePath} is missing a required "data" or "execute" property.`); + } + } +// } + +// Construct and prepare an instance of the REST module +const rest = new REST().setToken(token); + +// and deploy your commands! +// rest.put(Routes.applicationCommands(clientId), { body: [] }) +// .then(() => console.log('Successfully deleted all application commands.')) +// .catch(console.error); + +(async () => { + try { + console.log(`Started refreshing ${commands.length} application (/) commands.`); + + // The put method is used to fully refresh all commands in the guild with the current set + const data = await rest.put( + Routes.applicationCommands(clientId), + { body: commands }, + ); + + console.log(`Successfully reloaded ${data.length} application (/) commands.`); + } catch (error) { + // And of course, make sure you catch and log any errors! + console.error(error); + } +})();
\ No newline at end of file |