1 Commits
Author SHA1 Message Date
Dominic Ferrando 8709af48f8 Improve embed response for stats command 2026-08-15 17:04:29 -04:00
+31 -3
View File
@@ -1,13 +1,41 @@
import type { Message } from "discord.js";
import { EmbedBuilder, type Message } from "discord.js";
import type { Command } from "../service";
import { api } from "../../../util";
const ATTRIBUTE_EMOJI: Record<string, string> = {
Strength: "💪",
Power: "⚡",
Endurance: "🏃",
Agility: "🤸",
};
export default {
name: "stats",
description: "View your fitness statistics!",
execute: async (message: Message) => {
const res = await api.accounts({ id: `@${message.author.id}` }).stats.get();
const stats = res.data;
console.log(stats);
if (!res.data) {
await message.reply("No stats found yet — submit an assessment first!");
return;
}
const { player, attributes } = res.data;
const embed = new EmbedBuilder()
.setColor(0xE74C3C)
.setTitle(`${message.author.username}'s Stats`)
.setThumbnail(message.author.displayAvatarURL())
.setDescription(`**Overall Level: ${player}**`)
.addFields(
Object.entries(attributes).map(([attribute, level]) => ({
name: `${ATTRIBUTE_EMOJI[attribute] ?? ""} ${attribute}`,
value: `Level ${level}`,
inline: true,
}))
)
.setFooter({ text: "Blade & Brawn" })
.setTimestamp();
await message.reply({ embeds: [embed] });
}
} as Command;