feat: add commands command
This commit is contained in:
@@ -0,0 +1,32 @@
|
|||||||
|
import { ChatInputCommandInteraction, EmbedBuilder, SlashCommandBuilder } from "discord.js";
|
||||||
|
import { Command } from "../../commands";
|
||||||
|
import { Bot } from "../../bot";
|
||||||
|
|
||||||
|
const builder = new SlashCommandBuilder()
|
||||||
|
.setName('commands')
|
||||||
|
.setDescription('Shows a list of all the commands.');
|
||||||
|
|
||||||
|
const cmd: Command = {
|
||||||
|
name: builder.name,
|
||||||
|
builder: builder,
|
||||||
|
execute: async (interaction: ChatInputCommandInteraction): Promise<void> => {
|
||||||
|
const responseEmbed = new EmbedBuilder()
|
||||||
|
.setColor("Blurple")
|
||||||
|
.setTitle("Command List");
|
||||||
|
|
||||||
|
const bot = Bot.get;
|
||||||
|
bot.getCategories().forEach(({ info, commands }) => {
|
||||||
|
const fieldBody = commands
|
||||||
|
.filter(({ builder }) => builder)
|
||||||
|
.map(({ builder }) => `• **${builder?.name}** - ${builder?.description}`)
|
||||||
|
.join("\n");
|
||||||
|
|
||||||
|
responseEmbed.addFields({ name: info.name, value: fieldBody });
|
||||||
|
});
|
||||||
|
|
||||||
|
await interaction.reply({ embeds: [responseEmbed] });
|
||||||
|
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
export default cmd;
|
||||||
Reference in New Issue
Block a user