Add quantity claimed to drop embed #61

Merged
Vylpes merged 1 commit from feature/37-drop-quantity into develop 2023-10-20 17:33:22 +01:00
2 changed files with 18 additions and 2 deletions

View file

@ -6,6 +6,7 @@ import { CardRarityToColour, CardRarityToString } from "../constants/CardRarity"
import { v4 } from "uuid"; import { v4 } from "uuid";
import { CoreClient } from "../client/client"; import { CoreClient } from "../client/client";
import Card from "../database/entities/card/Card"; import Card from "../database/entities/card/Card";
import Inventory from "../database/entities/app/Inventory";
export default class Reroll extends ButtonEvent { export default class Reroll extends ButtonEvent {
public override async execute(interaction: ButtonInteraction) { public override async execute(interaction: ButtonInteraction) {
@ -32,9 +33,16 @@ export default class Reroll extends ButtonEvent {
const attachment = new AttachmentBuilder(image, { name: randomCard.FileName }); const attachment = new AttachmentBuilder(image, { name: randomCard.FileName });
const inventory = await Inventory.FetchOneByCardNumberAndUserId(interaction.user.id, randomCard.CardNumber);
const quantityClaimed = inventory ? inventory.Quantity : 0;
let embedDescription = "";
embedDescription += `Series: ${randomCard.Series.Name}\n`;
embedDescription += `Claimed: ${quantityClaimed || 0}\n`;
const embed = new EmbedBuilder() const embed = new EmbedBuilder()
.setTitle(randomCard.Name) .setTitle(randomCard.Name)
.setDescription(randomCard.Series.Name) .setDescription(embedDescription)
.setFooter({ text: CardRarityToString(randomCard.Rarity) }) .setFooter({ text: CardRarityToString(randomCard.Rarity) })
.setColor(CardRarityToColour(randomCard.Rarity)) .setColor(CardRarityToColour(randomCard.Rarity))
.setImage(`attachment://${randomCard.FileName}`); .setImage(`attachment://${randomCard.FileName}`);

View file

@ -6,6 +6,7 @@ import { readFileSync } from "fs";
import { CoreClient } from "../client/client"; import { CoreClient } from "../client/client";
import { v4 } from "uuid"; import { v4 } from "uuid";
import Card from "../database/entities/card/Card"; import Card from "../database/entities/card/Card";
import Inventory from "../database/entities/app/Inventory";
export default class Drop extends Command { export default class Drop extends Command {
constructor() { constructor() {
@ -38,9 +39,16 @@ export default class Drop extends Command {
const attachment = new AttachmentBuilder(image, { name: randomCard.FileName }); const attachment = new AttachmentBuilder(image, { name: randomCard.FileName });
const inventory = await Inventory.FetchOneByCardNumberAndUserId(interaction.user.id, randomCard.CardNumber);
const quantityClaimed = inventory ? inventory.Quantity : 0;
let embedDescription = "";
embedDescription += `Series: ${randomCard.Series.Name}\n`;
embedDescription += `Claimed: ${quantityClaimed || 0}\n`;
const embed = new EmbedBuilder() const embed = new EmbedBuilder()
.setTitle(randomCard.Name) .setTitle(randomCard.Name)
.setDescription(randomCard.Series.Name) .setDescription(embedDescription)
.setFooter({ text: CardRarityToString(randomCard.Rarity) }) .setFooter({ text: CardRarityToString(randomCard.Rarity) })
.setColor(CardRarityToColour(randomCard.Rarity)) .setColor(CardRarityToColour(randomCard.Rarity))
.setImage(`attachment://${randomCard.FileName}`); .setImage(`attachment://${randomCard.FileName}`);