From f98f7e6a34f02e8d6ea6673fbe68ab6db28a2e89 Mon Sep 17 00:00:00 2001 From: Andrew Lee Date: Sun, 2 Mar 2025 11:49:28 -0500 Subject: Added the fundementials of the bot --- bot/src/handler/commands.js | 20 ++++++++++++++++++++ bot/src/handler/event.js | 23 +++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 bot/src/handler/commands.js create mode 100644 bot/src/handler/event.js (limited to 'bot/src/handler') diff --git a/bot/src/handler/commands.js b/bot/src/handler/commands.js new file mode 100644 index 0000000..d4b7bdc --- /dev/null +++ b/bot/src/handler/commands.js @@ -0,0 +1,20 @@ +import { Collection } from 'discord.js' +import { readdirSync } from 'node:fs'; +import path from "node:path"; +import { fileURLToPath } from "url"; +import { dirname } from "path"; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = dirname(__filename); + +const commandPath = path.join(__dirname, '../commands'); + +export async function commands(client) { + client.commands = new Collection(); + const commandFiles = readdirSync(commandPath).filter(file => file.endsWith('.js')); + + for (const file of commandFiles) { + const { default: command } = await import(`../commands/${file}`); + client.commands.set(command.data.name, command); + } +} diff --git a/bot/src/handler/event.js b/bot/src/handler/event.js new file mode 100644 index 0000000..0783741 --- /dev/null +++ b/bot/src/handler/event.js @@ -0,0 +1,23 @@ +import { fileURLToPath } from "url"; +import { dirname } from "path"; +import path from "node:path"; +import fs from "node:fs"; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = dirname(__filename); + +const eventsPath = path.join(__dirname, '../events'); +const eventFiles = fs.readdirSync(eventsPath).filter(file => file.endsWith('.js')); + +export async function event(client) { + for (const file of eventFiles) { + const filePath = path.join(eventsPath, file); + const event = (await import(filePath)).default; + if (event.once) { + client.once(event.name, (...args) => event.execute(...args)); + } else { + client.on(event.name, (...args) => event.execute(...args)); + } + } + +} -- cgit v1.2.3