Files
bot-discord-coins/commands/casino/deposit.js
T
2024-06-24 00:32:05 +02:00

79 lines
2.6 KiB
JavaScript

const { EmbedBuilder } = require("discord.js");
const db = require("../../fonctions/database.js");
const embedColor = require("../../fonctions/embedColor.js");
module.exports = {
aliases: ["dep", "depot"],
description: "Dépose vos coins dans votre compte en banque.",
emote: "💰",
utilisation: "<montant|all>",
permission: 0,
async execute(message, args, client) {
const user = await new Promise((resolve, reject) => {
db.get(
`SELECT * FROM users WHERE guildId = ? AND userId = ?`,
[message.guild.id, message.author.id],
(err, row) => {
if (err) reject(err);
resolve(row);
},
);
});
const pocket = user.pocket;
const bank = user.bank;
let title = "Dépôt Impossible";
let description = "";
if (args.length === 0) {
description = "❌ Vous devez spécifier un montant à déposer.";
} else if (args[0] === "all") {
if (pocket <= 0) {
description = "❌ Vous n'avez pas d'argent à déposer.";
} else {
title = "Dépôt Réussi";
description = `💰 Vous avez déposé \`${pocket}\` coins dans votre compte en banque.`;
db.run(
`UPDATE users SET pocket = ?, bank = ? WHERE guildId = ? AND userId = ?`,
[0, pocket + bank, message.guild.id, message.author.id],
);
}
} else if (isNaN(args[0])) {
description = "❌ Vous devez spécifier un montant valide à déposer.";
} else if (pocket <= 0) {
description = "❌ Vous n'avez pas d'argent à déposer.";
} else if (parseInt(args[0]) > pocket) {
description =
"❌ Vous n'avez pas assez d'argent pour déposer cette somme.";
} else if (parseInt(args[0]) <= 0) {
description =
"❌ Vous ne pouvez pas deposer une somme négative ou nulle.";
} else {
title = "Dépôt Réussi";
description = `💰 Vous avez déposé ${args[0]} coins dans votre compte en banque.`;
db.run(
`UPDATE users SET pocket = ?, bank = ? WHERE guildId = ? AND userId = ?`,
[
pocket - parseInt(args[0]),
bank + parseInt(args[0]),
message.guild.id,
message.author.id,
],
);
}
const embed = new EmbedBuilder()
.setTitle(title)
.setDescription(description)
.setColor(await embedColor(message.author.id, message.guild.id))
.setTimestamp()
.setFooter({
text: `Demandé par ${message.author.tag}`,
iconURL: message.author.displayAvatarURL(),
});
message.reply({ embeds: [embed], allowedMentions: { repliedUser: false } });
},
};