hotfix/0.1.1 #23

Merged
Vylpes merged 4 commits from hotfix/0.1.1 into develop 2023-09-04 13:02:03 +01:00
5 changed files with 19 additions and 15 deletions
Showing only changes of commit b848629f8d - Show all commits

View file

@ -65,7 +65,7 @@ export default class CardSetupFunction {
const cardId = filePart[0]; const cardId = filePart[0];
const cardName = filePart[0]; const cardName = filePart[0];
const card = new Card(cardId, cardName, CardRarity.Bronze, path.join(path.join(process.cwd(), 'cards', series.Path, 'BRONZE', file)), series); const card = new Card(cardId, cardName, CardRarity.Bronze, path.join(path.join(process.cwd(), 'cards', series.Path, 'BRONZE', file)), file, series);
cardsToSave.push(card); cardsToSave.push(card);
} }
@ -76,7 +76,7 @@ export default class CardSetupFunction {
const cardId = filePart[0]; const cardId = filePart[0];
const cardName = filePart[0]; const cardName = filePart[0];
const card = new Card(cardId, cardName, CardRarity.Gold, path.join(path.join(process.cwd(), 'cards', series.Path, 'GOLD', file)), series); const card = new Card(cardId, cardName, CardRarity.Gold, path.join(path.join(process.cwd(), 'cards', series.Path, 'GOLD', file)), file, series);
cardsToSave.push(card); cardsToSave.push(card);
} }
@ -87,7 +87,7 @@ export default class CardSetupFunction {
const cardId = filePart[0]; const cardId = filePart[0];
const cardName = filePart[0]; const cardName = filePart[0];
const card = new Card(cardId, cardName, CardRarity.Legendary, path.join(path.join(process.cwd(), 'cards', series.Path, 'LEGENDARY', file)), series); const card = new Card(cardId, cardName, CardRarity.Legendary, path.join(path.join(process.cwd(), 'cards', series.Path, 'LEGENDARY', file)), file, series);
cardsToSave.push(card); cardsToSave.push(card);
} }
@ -98,7 +98,7 @@ export default class CardSetupFunction {
const cardId = filePart[0]; const cardId = filePart[0];
const cardName = filePart[0]; const cardName = filePart[0];
const card = new Card(cardId, cardName, CardRarity.Silver, path.join(path.join(process.cwd(), 'cards', series.Path, 'SILVER', file)), series); const card = new Card(cardId, cardName, CardRarity.Silver, path.join(path.join(process.cwd(), 'cards', series.Path, 'SILVER', file)), file, series);
cardsToSave.push(card); cardsToSave.push(card);
} }

View file

@ -14,14 +14,14 @@ export default class Reroll extends ButtonEvent {
const image = readFileSync(randomCard.Path); const image = readFileSync(randomCard.Path);
const attachment = new AttachmentBuilder(image, { name: `${randomCard.Id}.png` }); const attachment = new AttachmentBuilder(image, { name: randomCard.FileName });
const embed = new EmbedBuilder() const embed = new EmbedBuilder()
.setTitle(randomCard.Name) .setTitle(randomCard.Name)
.setDescription(randomCard.Series.Name) .setDescription(randomCard.Series.Name)
.setFooter({ text: CardRarityToString(randomCard.Rarity) }) .setFooter({ text: CardRarityToString(randomCard.Rarity) })
.setColor(CardRarityToColour(randomCard.Rarity)) .setColor(CardRarityToColour(randomCard.Rarity))
.setImage(`attachment://${randomCard.Id}.png`); .setImage(`attachment://${randomCard.FileName}`);
const row = new ActionRowBuilder<ButtonBuilder>(); const row = new ActionRowBuilder<ButtonBuilder>();

View file

@ -20,14 +20,16 @@ export default class Drop extends Command {
const image = readFileSync(randomCard.Path); const image = readFileSync(randomCard.Path);
const attachment = new AttachmentBuilder(image, { name: `${randomCard.Id}.png` }); await interaction.deferReply();
const attachment = new AttachmentBuilder(image, { name: randomCard.FileName });
const embed = new EmbedBuilder() const embed = new EmbedBuilder()
.setTitle(randomCard.Name) .setTitle(randomCard.Name)
.setDescription(randomCard.Series.Name) .setDescription(randomCard.Series.Name)
.setFooter({ text: CardRarityToString(randomCard.Rarity) }) .setFooter({ text: CardRarityToString(randomCard.Rarity) })
.setColor(CardRarityToColour(randomCard.Rarity)) .setColor(CardRarityToColour(randomCard.Rarity))
.setImage(`attachment://${randomCard.Id}.png`); .setImage(`attachment://${randomCard.FileName}`);
const row = new ActionRowBuilder<ButtonBuilder>(); const row = new ActionRowBuilder<ButtonBuilder>();
@ -43,7 +45,7 @@ export default class Drop extends Command {
.setLabel("Reroll") .setLabel("Reroll")
.setStyle(ButtonStyle.Secondary)); .setStyle(ButtonStyle.Secondary));
await interaction.reply({ await interaction.editReply({
embeds: [ embed ], embeds: [ embed ],
files: [ attachment ], files: [ attachment ],
components: [ row ], components: [ row ],

View file

@ -5,18 +5,19 @@ import Series from "./Series";
@Entity() @Entity()
export default class Card extends CardBaseEntity { export default class Card extends CardBaseEntity {
constructor(cardNumber: string, name: string, rarity: CardRarity, path: string, series: Series) { constructor(cardNumber: string, name: string, rarity: CardRarity, path: string, fileName: string, series: Series) {
super(); super();
this.CardNumber = cardNumber; this.CardNumber = cardNumber;
this.Name = name; this.Name = name;
this.Rarity = rarity; this.Rarity = rarity;
this.Path = path; this.Path = path;
this.FileName = fileName;
this.Series = series; this.Series = series;
} }
@Column() @Column()
CardNumber: string CardNumber: string;
@Column() @Column()
Name: string; Name: string;
@ -25,7 +26,10 @@ export default class Card extends CardBaseEntity {
Rarity: CardRarity; Rarity: CardRarity;
@Column() @Column()
Path: string Path: string;
@Column()
FileName: string;
@ManyToOne(() => Series, x => x.Cards) @ManyToOne(() => Series, x => x.Cards)
Series: Series; Series: Series;

View file

@ -5,8 +5,6 @@ import Series from "../database/entities/card/Series";
export default class CardDropHelper { export default class CardDropHelper {
public static async GetRandomCard(): Promise<Card> { public static async GetRandomCard(): Promise<Card> {
const seriesRepository = CardDataSource.getRepository(Series);
const allSeries = await Series.FetchAll(Series, [ "Cards", "Cards.Series" ]); const allSeries = await Series.FetchAll(Series, [ "Cards", "Cards.Series" ]);
const allSeriesWithCards = allSeries.filter(x => x.Cards.length > 0); const allSeriesWithCards = allSeries.filter(x => x.Cards.length > 0);
@ -27,7 +25,7 @@ export default class CardDropHelper {
else if (randomRarity < goldChance) cardRarity = CardRarity.Gold; else if (randomRarity < goldChance) cardRarity = CardRarity.Gold;
else cardRarity = CardRarity.Legendary; else cardRarity = CardRarity.Legendary;
const allCards = randomSeries.Cards.filter(x => x.Rarity == cardRarity); const allCards = randomSeries.Cards.filter(x => x.Rarity == cardRarity && x.Path && x.FileName);
const randomCardIndex = Math.floor(Math.random() * allCards.length); const randomCardIndex = Math.floor(Math.random() * allCards.length);