Updated and cleaned up scripts and dev info cmd

This commit is contained in:
2023-11-24 13:44:43 +01:00
parent 9cc7661881
commit 81cd6940b2
3 changed files with 7 additions and 35 deletions

View File

@@ -3,6 +3,7 @@ require("dotenv").config()
const token = process.env.PRODTOKEN const token = process.env.PRODTOKEN
const clientId = process.env.CLIENTID const clientId = process.env.CLIENTID
const guildId = process.env.GUILDID const guildId = process.env.GUILDID
const rest = new REST({ version: "10" }).setToken(token)
const fs = require("node:fs") const fs = require("node:fs")
const args = process.argv.slice(2) const args = process.argv.slice(2)
const arg = args[0] const arg = args[0]
@@ -12,31 +13,22 @@ if (!arg) {
} }
else if (arg === "--prod") { else if (arg === "--prod") {
const commands = [] const commands = []
// Grab all the command files from the commands directory you created earlier const commandFiles = fs.readdirSync("./src/commands").filter(file => file.endsWith(".js"))
const commandFiles = fs.readdirSync("./commands").filter(file => file.endsWith(".js")) const contentMenuCommands = fs.readdirSync("./src/commands-contextmenu").filter(file => file.endsWith(".js"))
const contentMenuCommands = fs.readdirSync("./commands-contextmenu").filter(file => file.endsWith(".js"))
// Grab the SlashCommandBuilder#toJSON() output of each command's data for deployment
for (const file of commandFiles) { for (const file of commandFiles) {
const command = require(`../commands/${file}`) const command = require(`../src/commands/${file}`)
commands.push(command.data.toJSON()) commands.push(command.data.toJSON())
} }
for (const file of contentMenuCommands) { for (const file of contentMenuCommands) {
const command = require(`../commands-contextmenu/${file}`) const command = require(`../src/commands-contextmenu/${file}`)
commands.push(command.data.toJSON()) commands.push(command.data.toJSON())
} }
// Construct and prepare an instance of the REST module
const rest = new REST({ version: "10" }).setToken(token);
// and deploy your commands!
(async () => { (async () => {
try { try {
console.log(`Started refreshing ${commands.length} application (/) commands.`) 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( const data = await rest.put(
Routes.applicationCommands(clientId), Routes.applicationCommands(clientId),
{ body: commands }, { body: commands },
@@ -44,32 +36,23 @@ else if (arg === "--prod") {
console.log(`Successfully reloaded ${data.length} application (/) commands.`) console.log(`Successfully reloaded ${data.length} application (/) commands.`)
} catch (error) { } catch (error) {
// And of course, make sure you catch and log any errors!
console.error(error) console.error(error)
} }
})() })()
} }
else if (arg === "--dev") { else if (arg === "--dev") {
const commands = [] const commands = []
// Grab all the command files from the commands directory you created earlier
const commandFiles = fs.readdirSync("./commands-testing").filter(file => file.endsWith(".js")) const commandFiles = fs.readdirSync("./commands-testing").filter(file => file.endsWith(".js"))
// Grab the SlashCommandBuilder#toJSON() output of each command's data for deployment
for (const file of commandFiles) { for (const file of commandFiles) {
const command = require(`../commands-testing/${file}`) const command = require(`../commands-testing/${file}`)
commands.push(command.data.toJSON()) commands.push(command.data.toJSON())
} }
// Construct and prepare an instance of the REST module
const rest = new REST({ version: "10" }).setToken(token);
// and deploy your commands!
(async () => { (async () => {
try { try {
console.log(`Started refreshing ${commands.length} application (/) commands.`) 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( const data = await rest.put(
Routes.applicationGuildCommands(clientId, guildId), Routes.applicationGuildCommands(clientId, guildId),
{ body: commands }, { body: commands },
@@ -77,7 +60,6 @@ else if (arg === "--dev") {
console.log(`Successfully reloaded ${data.length} application (/) commands.`) console.log(`Successfully reloaded ${data.length} application (/) commands.`)
} catch (error) { } catch (error) {
// And of course, make sure you catch and log any errors!
console.error(error) console.error(error)
} }
})() })()

View File

@@ -3,32 +3,23 @@ require("dotenv").config()
const token = process.env.DEVTOKEN const token = process.env.DEVTOKEN
const clientId = process.env.DEVID const clientId = process.env.DEVID
const guildId = process.env.GUILDID const guildId = process.env.GUILDID
const rest = new REST({ version: "10" }).setToken(token)
const commands = [] const commands = []
// Grab all the command files from the commands directory you created earlier
// const commandFiles = fs.readdirSync('./commands-testing').filter(file => file.endsWith('.js'));
const commandFiles = [ const commandFiles = [
"../commands/config.js", "../commands/config.js",
"../commands/setup.js", "../commands/setup.js",
] ]
// Grab the SlashCommandBuilder#toJSON() output of each command's data for deployment
for (const file of commandFiles) { for (const file of commandFiles) {
const command = require(`${file}`) const command = require(`${file}`)
commands.push(command.data.toJSON()) commands.push(command.data.toJSON())
} }
// Construct and prepare an instance of the REST module
const rest = new REST({ version: "10" }).setToken(token);
// and deploy your commands!
(async () => { (async () => {
try { try {
console.log(`Started refreshing ${commands.length} application (/) commands.`) 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( const data = await rest.put(
Routes.applicationGuildCommands(clientId, guildId), Routes.applicationGuildCommands(clientId, guildId),
{ body: commands }, { body: commands },
@@ -36,7 +27,6 @@ const rest = new REST({ version: "10" }).setToken(token);
console.log(`Successfully reloaded ${data.length} application (/) commands.`) console.log(`Successfully reloaded ${data.length} application (/) commands.`)
} catch (error) { } catch (error) {
// And of course, make sure you catch and log any errors!
console.error(error) console.error(error)
} }
})() })()

View File

@@ -1,9 +1,9 @@
const { SlashCommandBuilder, PermissionFlagsBits } = require("discord.js") const { SlashCommandBuilder, PermissionFlagsBits } = require("discord.js")
module.exports = { module.exports = {
name: "dev-info", name: "dev-info",
description: "Test command for the bot.", description: "Test command for the bot.",
type: "slash", type: "slash",
dev: true,
data: new SlashCommandBuilder() data: new SlashCommandBuilder()
.setName("dev-info") .setName("dev-info")