21 lines
780 B
TypeScript
21 lines
780 B
TypeScript
import { ExtendedClient as Client } from "utils/Client"
|
|
import { IEvent } from "interfaces"
|
|
import path from "path"
|
|
import fs from "fs"
|
|
|
|
export default function loadEvents(client: Client) {
|
|
const serverDir = path.join(__dirname, "..", "..", "events", "server")
|
|
const eventDirs = fs.readdirSync(serverDir)
|
|
for (const eventDir of eventDirs) {
|
|
const eventFiles = fs.readdirSync(path.join(serverDir, eventDir))
|
|
for (const eventFile of eventFiles) {
|
|
const eventPath = path.join(serverDir, eventDir, eventFile)
|
|
const event: IEvent = require(eventPath)
|
|
if (!event.disabled) {
|
|
client.on(event.event, event.execute)
|
|
}
|
|
delete require.cache[require.resolve(eventPath)]
|
|
}
|
|
}
|
|
}
|