[Events] Refresh event loading & organisation (#11)

This commit is contained in:
2026-08-28 00:16:52 +08:00
committed by GitHub
parent 896d3fc4d9
commit bc9784c9b7
24 changed files with 463 additions and 362 deletions
+8 -11
View File
@@ -1,6 +1,6 @@
import { Client as DiscordClient, GatewayIntentBits, MessageFlags, Partials } from 'discord.js';
import { config } from './config';
import { handleAuditLogCreate, handleBanRemove, handleBulkMessageDelete, handleGuildCreate, handleMemberJoin, handleMessageCreate, handleMessageDelete, handleMessageUpdate, handleThreadCreate, handleVoiceStateUpdate } from './events';
import events from './events';
import { ScheduledTasks, Scheduler } from './scheduler';
import { Database } from './shared/Database';
import { openRedisClient } from './shared/RedisClient';
@@ -9,6 +9,7 @@ import { initIfNecessary, loadHandlersFrom, refreshCommands } from './utils';
import { initializeWebserver } from './webserver';
import { Encrypter } from './shared/Encrypter';
let ready = false;
console.log('Starting...');
@@ -142,16 +143,12 @@ client.on('clientReady', async () => {
ScheduledTasks.forEach(task => scheduler.add(task));
client.on('guildAuditLogEntryCreate', handleAuditLogCreate);
client.on('guildBanRemove', handleBanRemove);
client.on('guildCreate', handleGuildCreate);
client.on('guildMemberAdd', handleMemberJoin);
client.on('messageCreate', handleMessageCreate);
client.on('messageDelete', handleMessageDelete);
client.on('messageDeleteBulk', handleBulkMessageDelete);
client.on('messageUpdate', handleMessageUpdate);
client.on('threadCreate', handleThreadCreate);
client.on('voiceStateUpdate', handleVoiceStateUpdate);
events.forEach(event =>
client.on(event.event, (...args) =>
Promise.resolve((event.handler as (...args: unknown[]) => Promise<void>)(...args))
.catch(e => console.error(`Error in ${event.event} handler:`, e))
)
);
ready = true;
console.log('Ready');