From 50a70797b4707a6971e831c614462a8dabe2a325 Mon Sep 17 00:00:00 2001 From: Taken Date: Mon, 16 Sep 2024 13:59:19 +0200 Subject: [PATCH] Changed the event handler --- src/events/server/guildMemberAdd/logNewJoins.ts | 5 +---- src/events/server/interactions/logBtnsCmds.ts | 10 +++------- src/events/server/messages/eval.ts | 10 +++------- src/events/server/messages/react.ts | 8 ++------ src/events/server/ready/consolelog.ts | 8 ++------ src/events/server/ready/sendOnlineMessage.ts | 5 +---- src/events/server/ready/status.ts | 8 ++------ src/events/server/voiceStateUpdate/updatecache.ts | 8 ++------ src/interfaces/IEvent.ts | 9 +++------ src/utils/Events/events.ts | 3 +-- 10 files changed, 20 insertions(+), 54 deletions(-) diff --git a/src/events/server/guildMemberAdd/logNewJoins.ts b/src/events/server/guildMemberAdd/logNewJoins.ts index 4906816..f174da5 100644 --- a/src/events/server/guildMemberAdd/logNewJoins.ts +++ b/src/events/server/guildMemberAdd/logNewJoins.ts @@ -4,10 +4,7 @@ import { IEvent } from "interfaces" import logToChannel from "utils/functions/logtochannel.js" export default { - name: "logNewJoins", - description: "Logs new joins", event: "guildMemberAdd", - execute(member: GuildMember) { if (process.env.NODE_ENV === "dev") return logToChannel("bot", { @@ -27,4 +24,4 @@ export default { }] }) } -} as IEvent +} as IEvent<"guildMemberAdd"> diff --git a/src/events/server/interactions/logBtnsCmds.ts b/src/events/server/interactions/logBtnsCmds.ts index d79ff1b..99561a1 100644 --- a/src/events/server/interactions/logBtnsCmds.ts +++ b/src/events/server/interactions/logBtnsCmds.ts @@ -1,14 +1,10 @@ -import { ButtonInteraction, ChatInputCommandInteraction } from "discord.js" import { IEvent } from "interfaces" import { color } from "utils/functions/colors.js" export default { - name: "logBtnsCmds", - description: "Logs all button and command interactions", event: "interactionCreate", - - execute(interaction: ChatInputCommandInteraction | ButtonInteraction) { - if (interaction.isCommand()) { + execute(interaction) { + if (interaction.isChatInputCommand()) { let subcommand: string | null try { @@ -60,4 +56,4 @@ export default { return } } -} as IEvent +} as IEvent<"interactionCreate"> diff --git a/src/events/server/messages/eval.ts b/src/events/server/messages/eval.ts index 455b342..795f84c 100644 --- a/src/events/server/messages/eval.ts +++ b/src/events/server/messages/eval.ts @@ -1,14 +1,10 @@ -import { ChannelType, Message } from "discord.js" +import { ChannelType } from "discord.js" import { IEvent } from "interfaces" import env from "utils/Env.js" export default { - name: "eval", - description: "Evaluate a JavaScript expression", event: "messageCreate", - disabled: true, - - async execute(message: Message) { + async execute(message) { if (message.author.bot) return if (message.author.id !== env.prod.dev) return if (!message.content.startsWith("!eval")) return @@ -34,4 +30,4 @@ export default { }) } } -} as IEvent +} as IEvent<"messageCreate"> diff --git a/src/events/server/messages/react.ts b/src/events/server/messages/react.ts index 8c71458..7a42ca8 100644 --- a/src/events/server/messages/react.ts +++ b/src/events/server/messages/react.ts @@ -1,14 +1,10 @@ -import { Message } from "discord.js" import { IEvent } from "interfaces" export default { - name: "ur mom", - description: "ur moms someone", event: "messageCreate", - - async execute(message: Message) { + async execute(message) { if (message.content.toLowerCase().includes("ur mom") && message.author.username === "taken.lua") { message.react("Woot:734345936347725885") } } -} as IEvent +} as IEvent<"messageCreate"> diff --git a/src/events/server/ready/consolelog.ts b/src/events/server/ready/consolelog.ts index 157184d..be36d0c 100644 --- a/src/events/server/ready/consolelog.ts +++ b/src/events/server/ready/consolelog.ts @@ -1,13 +1,9 @@ import { IEvent } from "interfaces" -import { ExtendedClient as Client } from "utils/Client.js" import { color } from "utils/functions/colors.js" export default { - name: "conolelog", - description: "console log", event: "ready", - - execute(client: Client) { + execute(client) { console.log(color("Logged in as " + client.user!.tag + "!", "green")) } -} as IEvent +} as IEvent<"ready"> diff --git a/src/events/server/ready/sendOnlineMessage.ts b/src/events/server/ready/sendOnlineMessage.ts index d6ab2c6..8becca8 100644 --- a/src/events/server/ready/sendOnlineMessage.ts +++ b/src/events/server/ready/sendOnlineMessage.ts @@ -3,10 +3,7 @@ import { IEvent } from "interfaces" import logToChannel from "utils/functions/logtochannel.js" export default { - name: "sendonlinemessage", - description: "send an online message", event: "ready", - execute() { if (process.env.NODE_ENV === "dev") return @@ -17,4 +14,4 @@ export default { }] }) } -} as IEvent +} as IEvent<"ready"> diff --git a/src/events/server/ready/status.ts b/src/events/server/ready/status.ts index 5eecec3..f0060cd 100644 --- a/src/events/server/ready/status.ts +++ b/src/events/server/ready/status.ts @@ -2,14 +2,10 @@ import { guildid } from "config/options.js" import statuses from "config/statuses.js" import { Guild } from "discord.js" import { IEvent } from "interfaces" -import { ExtendedClient as Client } from "utils/Client.js" export default { - name: "status", - description: "Sets the status of the bot", event: "ready", - - execute(client: Client) { + execute(client) { const user = client.user! const guild = client.guilds.cache.get(guildid) as Guild @@ -31,4 +27,4 @@ export default { user.setStatus("dnd") } -} as IEvent +} as IEvent<"ready"> diff --git a/src/events/server/voiceStateUpdate/updatecache.ts b/src/events/server/voiceStateUpdate/updatecache.ts index 39c0b46..fd411f2 100644 --- a/src/events/server/voiceStateUpdate/updatecache.ts +++ b/src/events/server/voiceStateUpdate/updatecache.ts @@ -1,12 +1,8 @@ -import { VoiceState } from "discord.js" import { IEvent } from "interfaces" export default { - name: "updatecache", - description: "Updates the voice states cache", event: "voiceStateUpdate", - - async execute(_o: VoiceState, n: VoiceState) { + async execute(_o, n) { const guild = n.guild if (!guild) return @@ -15,4 +11,4 @@ export default { guild.voiceStates.cache.delete(n.id) } } -} as IEvent +} as IEvent<"voiceStateUpdate"> diff --git a/src/interfaces/IEvent.ts b/src/interfaces/IEvent.ts index 205182d..a253ae0 100644 --- a/src/interfaces/IEvent.ts +++ b/src/interfaces/IEvent.ts @@ -1,9 +1,6 @@ import { ClientEvents } from "discord.js" -export default interface IEvent { - name: string - description: string - event: keyof ClientEvents - disabled?: boolean - execute(...args: any[]): void +export default interface IEvent { + event: E + execute(...args: ClientEvents[E]): void } diff --git a/src/utils/Events/events.ts b/src/utils/Events/events.ts index 39f69e1..d803e6e 100644 --- a/src/utils/Events/events.ts +++ b/src/utils/Events/events.ts @@ -1,5 +1,4 @@ import fs from "fs" -import { IEvent } from "interfaces" import path from "path" import { ExtendedClient as Client } from "utils/Client.js" const __dirname = import.meta.dirname @@ -11,7 +10,7 @@ export default async function loadEvents(client: Client) { const eventFiles = fs.readdirSync(path.join(serverDir, eventDir)) for (const eventFile of eventFiles) { const eventPath = path.join(serverDir, eventDir, eventFile) - const { default: event } = await import("file://" + eventPath) as { default: IEvent } + const { default: event } = await import("file://" + eventPath) if (!event.disabled) { client.on(event.event, event.execute) }