diff --git a/.env.example b/.env.example index dc6f5de..ce664a9 100644 --- a/.env.example +++ b/.env.example @@ -7,7 +7,7 @@ # any secret values. BOT_TOKEN= -BOT_VER=0.6.1 +BOT_VER=0.6.0 BOT_AUTHOR=Vylpes BOT_OWNERID=147392775707426816 BOT_CLIENTID=682942374040961060 diff --git a/package-lock.json b/package-lock.json index 83153ed..bf650eb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "card-drop", - "version": "0.6.1", + "version": "0.6.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "card-drop", - "version": "0.6.1", + "version": "0.6.0", "license": "MIT", "dependencies": { "@discordjs/rest": "^2.0.0", diff --git a/package.json b/package.json index ec102f9..25a7c33 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "card-drop", - "version": "0.6.1", + "version": "0.6.0", "main": "./dist/bot.js", "typings": "./dist", "scripts": { diff --git a/src/buttonEvents/Claim.ts b/src/buttonEvents/Claim.ts index 4f7f5ae..e94f7cc 100644 --- a/src/buttonEvents/Claim.ts +++ b/src/buttonEvents/Claim.ts @@ -11,7 +11,6 @@ import CardConstants from "../constants/CardConstants"; export default class Claim extends ButtonEvent { public override async execute(interaction: ButtonInteraction) { if (!interaction.guild || !interaction.guildId) return; - if (!interaction.channel) return; await interaction.deferUpdate(); @@ -22,26 +21,15 @@ export default class Claim extends ButtonEvent { AppLogger.LogSilly("Button/Claim", `Parameters: cardNumber=${cardNumber}, claimId=${claimId}, droppedBy=${droppedBy}, userId=${userId}`); - const user = await User.FetchOneById(User, userId) || new User(userId, CardConstants.StartingCurrency); - - AppLogger.LogSilly("Button/Claim", `${user.Id} has ${user.Currency} currency`); - - if (!user.RemoveCurrency(CardConstants.ClaimCost)) { - await interaction.channel.send(`${interaction.user}, Not enough currency! You need ${CardConstants.ClaimCost} currency, you have ${user.Currency}!`); - return; - } - - await user.Save(User, user); - const claimed = await eClaim.FetchOneByClaimId(claimId); if (claimed) { - await interaction.channel.send(`${interaction.user}, This card has already been claimed!`); + await interaction.reply("This card has already been claimed"); return; } if (claimId == CoreClient.ClaimId && userId != droppedBy) { - await interaction.channel.send(`${interaction.user}, The latest dropped card can only be claimed by the user who dropped it!`); + await interaction.reply("The latest dropped card can only be claimed by the user who dropped it"); return; } @@ -55,6 +43,17 @@ export default class Claim extends ButtonEvent { await inventory.Save(Inventory, inventory); + const user = await User.FetchOneById(User, userId) || new User(userId, CardConstants.StartingCurrency); + + AppLogger.LogSilly("Button/Claim", `${user.Id} has ${user.Currency} currency`); + + if (!user.RemoveCurrency(CardConstants.ClaimCost)) { + await interaction.reply(`Not enough currency! You need 10 currency, you have ${user.Currency}`); + return; + } + + await user.Save(User, user); + const claim = new eClaim(claimId); claim.SetInventory(inventory); diff --git a/src/buttonEvents/Reroll.ts b/src/buttonEvents/Reroll.ts index c55aedf..c271a3a 100644 --- a/src/buttonEvents/Reroll.ts +++ b/src/buttonEvents/Reroll.ts @@ -8,8 +8,6 @@ import Config from "../database/entities/app/Config"; import CardDropHelperMetadata from "../helpers/CardDropHelperMetadata"; import path from "path"; import AppLogger from "../client/appLogger"; -import User from "../database/entities/app/User"; -import CardConstants from "../constants/CardConstants"; export default class Reroll extends ButtonEvent { public override async execute(interaction: ButtonInteraction) { @@ -25,20 +23,6 @@ export default class Reroll extends ButtonEvent { return; } - let user = await User.FetchOneById(User, interaction.user.id); - - if (!user) { - user = new User(interaction.user.id, CardConstants.StartingCurrency); - await user.Save(User, user); - - AppLogger.LogInfo("Commands/Drop", `New user (${interaction.user.id}) saved to the database`); - } - - if (user.Currency < CardConstants.ClaimCost) { - await interaction.reply(`Not enough currency! You need ${CardConstants.ClaimCost} currency, you have ${user.Currency}!`); - return; - } - const randomCard = CardDropHelperMetadata.GetRandomCard(); if (!randomCard) { diff --git a/src/commands/drop.ts b/src/commands/drop.ts index ab6c339..7a91042 100644 --- a/src/commands/drop.ts +++ b/src/commands/drop.ts @@ -8,8 +8,6 @@ import Config from "../database/entities/app/Config"; import CardDropHelperMetadata from "../helpers/CardDropHelperMetadata"; import path from "path"; import AppLogger from "../client/appLogger"; -import User from "../database/entities/app/User"; -import CardConstants from "../constants/CardConstants"; export default class Drop extends Command { constructor() { @@ -33,20 +31,6 @@ export default class Drop extends Command { return; } - let user = await User.FetchOneById(User, interaction.user.id); - - if (!user) { - user = new User(interaction.user.id, CardConstants.StartingCurrency); - await user.Save(User, user); - - AppLogger.LogInfo("Commands/Drop", `New user (${interaction.user.id}) saved to the database`); - } - - if (user.Currency < CardConstants.ClaimCost) { - await interaction.reply(`Not enough currency! You need ${CardConstants.ClaimCost} currency, you have ${user.Currency}!`); - return; - } - const randomCard = CardDropHelperMetadata.GetRandomCard(); if (!randomCard) { diff --git a/src/commands/trade.ts b/src/commands/trade.ts index 3324128..60f9033 100644 --- a/src/commands/trade.ts +++ b/src/commands/trade.ts @@ -36,11 +36,6 @@ export default class Trade extends Command { AppLogger.LogSilly("Commands/Trade", `Parameters: user=${user.id}, give=${give.value}, receive=${receive.value}`); - if (interaction.user.id == user.id) { - await interaction.reply("You can not create a trade with yourself."); - return; - } - const giveItemEntity = await Inventory.FetchOneByCardNumberAndUserId(interaction.user.id, give.value!.toString()); const receiveItemEntity = await Inventory.FetchOneByCardNumberAndUserId(user.id, receive.value!.toString());