From 1c253d25cb1d35aa987d76e07806999c562712d6 Mon Sep 17 00:00:00 2001 From: Andrew Lee Date: Sun, 2 Mar 2025 16:24:26 -0500 Subject: Bringing more features from 2.x; ESLint; API --- bot/src/handlers/event.js | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 bot/src/handlers/event.js (limited to 'bot/src/handlers/event.js') diff --git a/bot/src/handlers/event.js b/bot/src/handlers/event.js new file mode 100644 index 0000000..b15cbf2 --- /dev/null +++ b/bot/src/handlers/event.js @@ -0,0 +1,25 @@ +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) { + console.log(`[i] Loading ${eventFiles.length} events into memory...`); + for (const file of eventFiles) { + const filePath = path.join(eventsPath, file); + const event = (await import(filePath)).default; + console.log(`[i] Loading event: ${event.name}`); + if (event.once) { + client.once(event.name, (...args) => event.execute(...args)); + } else { + client.on(event.name, (...args) => event.execute(...args)); + } + } + +} -- cgit v1.2.3