39 lines
1.2 KiB
TypeScript
39 lines
1.2 KiB
TypeScript
import { CommandInteraction, CommandInteractionOptionResolver } from "discord.js"
|
|
import { ExtendedInteraction } from "../types/commandTypes"
|
|
import { Event } from '../structures/event'
|
|
import { client } from "../.."
|
|
|
|
/**
|
|
export default new Event('interactionCreate', async (interaction) => {
|
|
console.log(`Interaction has been created, ${JSON.stringify(interaction)}`)
|
|
if (interaction.isCommand()) {
|
|
await interaction.deferReply()
|
|
const command = client.commands.get(interaction.commandName)
|
|
if (!command)
|
|
return interaction.followUp('You have used a non existant command')
|
|
command.run({
|
|
args: interaction.options as CommandInteractionOptionResolver,
|
|
client: client,
|
|
interaction: interaction as ExtendedInteraction
|
|
})
|
|
}
|
|
})
|
|
*/
|
|
|
|
export const name = 'interactionCreate'
|
|
export async function execute(interaction: ExtendedInteraction) {
|
|
//console.dir(interaction, { depth: null })
|
|
if (interaction.isCommand()) {
|
|
console.log(`Interaction is a command.`)
|
|
await interaction.deferReply()
|
|
const command = client.commands.get(interaction.commandName)
|
|
if (!command)
|
|
return interaction.followUp('Invalid command')
|
|
command.run({
|
|
args: interaction.options as CommandInteractionOptionResolver,
|
|
client,
|
|
interaction
|
|
})
|
|
}
|
|
}
|