This commit is contained in:
arthur
2024-06-21 16:58:17 +02:00
8 changed files with 189 additions and 20 deletions
+3 -5
View File
@@ -6,10 +6,9 @@
&awh
&blacklistAdd
&blacklistRemove
&servers
&sell
?? = &sell
&drop
&box
?? = &box
&juge
&tcadenas
&tleave
@@ -18,5 +17,4 @@
&tdemote
&tpromote
&tedit
&tkick
&towner
&tkick
+3 -3
View File
@@ -17,12 +17,12 @@ module.exports = {
resolve(row);
});
});
const pocket = user.pocket
const bank = user.bank
const pocket = Math.round(user.pocket)
const bank = Math.round(user.bank)
const reputation = user.reputation
const niveau = user.lvl
const xp = user.xp
const tdrop = user.tdroper
const tdrop = Math.round(user.tdroper)
let anti_rob = ``
if (user.antiRob + 7200000 > Date.now()) {
+34 -4
View File
@@ -3,10 +3,10 @@ const db = require('../../fonctions/database.js');
const embedColor = require('../../fonctions/embedColor.js');
module.exports = {
aliases: ['leaderboard', 'lb'],
description: 'Affiche le top 10 des membres du serveur.',
aliases: ['leaderboard', 'lb', 'ttop'],
description: 'Affiche le top 10 des membres/teams du serveur.',
emote: '🏆',
utilisation: '[global|pocket|bank|reputation|niveau|teamdonnateur]',
utilisation: '[global|pocket|bank|reputation|niveau|team|teamreputation|teamdonnateur]',
permission: 0,
async execute(message, args, client) {
@@ -20,6 +20,10 @@ module.exports = {
args[0] = 'reputation'
} else if (args[0] === 'niveau' || args[0] === 'lvl' || args[0] === 'level' || args[0] === 'lvl') {
args[0] = 'niveau'
} else if (args[0] === 'team' || args[0] === 't') {
args[0] = 'team'
} else if (args[0] === 'teamreputation' || args[0] === 'treputation' || args[0] === 'teamrep' || args[0] === 'trep') {
args[0] = 'team'
} else if (args[0] === 'teamdonnateur' || args[0] === ' tdonnateur' || args[0] === 'tdroper' || args[0] === ' tdropper' || args[0] === ' teamdrop' || args[0] === 'tdrop' || args[0] === 'teamdroper' || args[0] === 'teamdropper') {
args[0] = 'teamdroper'
} else if (!args[0]) {
@@ -29,7 +33,7 @@ module.exports = {
message.reply({ embeds: [
new EmbedBuilder()
.setTitle('Argument invalide')
.setDescription(`Vous pouvez utiliser les arguments suivants: \`coins\`, \`pocket\`, \`bank\`, \`reputation\`, \`niveau\` ou ne rien mettre pour afficher le top 10 des membres du serveur.`)
.setDescription(`Vous pouvez utiliser les arguments suivants: \`coins\`, \`pocket\`, \`bank\`, \`reputation\`, \`niveau\`, \`team\`, \`teamreputation\`, \`teamdonnateur\`, ou ne rien mettre pour afficher le top 10 des membres du serveur.`)
.setColor(await embedColor(message.author.id, message.guild.id))
.setTimestamp()
.setFooter({ text: `Demandé par ${message.author.tag}`, iconURL: message.author.displayAvatarURL() })
@@ -73,6 +77,20 @@ module.exports = {
resolve(rows);
});
});
} else if (type === 'team') {
data = await new Promise((resolve, reject) => {
db.all(`SELECT name, bank AS coins FROM teams WHERE guildId = ? ORDER BY coins DESC LIMIT 10`, [message.guild.id], (err, rows) => {
if (err) reject(err);
resolve(rows);
});
});
} else if (type === 'teamreputation') {
data = await new Promise((resolve, reject) => {
db.all(`SELECT name, reputation AS teams FROM users WHERE guildId = ? ORDER BY coins DESC LIMIT 10`, [message.guild.id], (err, rows) => {
if (err) reject(err);
resolve(rows);
});
});
} else if (type === 'teamdroper') {
data = await new Promise((resolve, reject) => {
db.all(`SELECT userId, teamdroper AS coins FROM users WHERE guildId = ? ORDER BY coins DESC LIMIT 10`, [message.guild.id], (err, rows) => {
@@ -88,6 +106,8 @@ module.exports = {
bank: '🏦',
reputation: '🔺',
niveau: '📊',
team: '👑',
teamreputation: '🔺',
teamdroper: '🎁'
}
@@ -150,6 +170,16 @@ module.exports = {
.setEmoji('📊')
.setDescription('Affiche le top en fonction du niveau')
.setValue('niveau'),
new StringSelectMenuOptionBuilder()
.setLabel('Teams bank')
.setEmoji('👑')
.setDescription('Affiche le top en fonction de l\'argent des teams')
.setValue('team'),
new StringSelectMenuOptionBuilder()
.setLabel('Teams réputation')
.setEmoji('🔺')
.setDescription('Affiche le top en fonction de la réputation des teams')
.setValue('teamreputation'),
new StringSelectMenuOptionBuilder()
.setLabel('TeamDroper')
.setEmoji('🎁')
+1
View File
@@ -19,6 +19,7 @@ module.exports = {
}
});
});
if (key == 0) return message.reply('Tu n\'as pas de clef, tu ne peux pas ouvrir de box')
db.run(`UPDATE users SET key = key - 1 WHERE userId = ? AND guildId = ?`, [message.author.id, message.guild.id])
const embed = new EmbedBuilder()
+134
View File
@@ -0,0 +1,134 @@
const { EmbedBuilder, ButtonStyle, ButtonBuilder, ActionRowBuilder } = require('discord.js');
const embedColor = require('../../fonctions/embedColor.js');
const db = require('../../fonctions/database.js');
module.exports = {
aliases: ['pouletfight', 'pfight', 'poulet'],
description: 'Fait un combat de poulet.',
emote: '🐔',
utilisation: '<mise>',
permission: 0,
async execute(message, args, client) {
let mise = 0
const pocket = await new Promise((resolve, reject) => {
db.get(`SELECT pocket FROM users WHERE userId = ? AND guildId = ?`, [message.author.id, message.guild.id], (err, row) => {
if (err) {
reject(err);
} else {
resolve(row.pocket);
}
});
});
if (args[0] == 'all') {
mise = pocket
} else {
mise = args[0]
}
if (pocket < mise) {
embedColor(message.author.id, message.guild.id).then(color => {
const embed = new EmbedBuilder()
.setTitle('🐔 Poulet')
.setDescription(`Vous n'avez pas assez d'argent sur vous pour miser cette somme.`)
.setColor(color)
.setTimestamp()
.setFooter({ text: `Demandé par ${message.author.tag}`, iconURL: message.author.displayAvatarURL() })
message.reply({ embeds: [embed], allowedMentions: { repliedUser: false } })
});
return
}
if (isNaN(args[0]) && !args[0] == "all") {
embedColor(message.author.id, message.guild.id).then(color => {
const embed = new EmbedBuilder()
.setTitle('🐔 Poulet')
.setDescription(`La mise doit être un nombre.`)
.setColor(color)
.setTimestamp()
.setFooter({ text: `Demandé par ${message.author.tag}`, iconURL: message.author.displayAvatarURL() })
message.reply({ embeds: [embed], allowedMentions: { repliedUser: false } })
});
return
} else if (mise < 25) {
embedColor(message.author.id, message.guild.id).then(color => {
const embed = new EmbedBuilder()
.setTitle('🐔 Poulet')
.setDescription(`La mise doit être supérieure ou égale à \`25\`.`)
.setColor(color)
.setTimestamp()
.setFooter({ text: `Demandé par ${message.author.tag}`, iconURL: message.author.displayAvatarURL() })
message.reply({ embeds: [embed], allowedMentions: { repliedUser: false } })
});
return
}
embedColor(message.author.id, message.guild.id).then(color => {
const embed = new EmbedBuilder()
.setTitle('🐔 Poulet')
//.setImage('') // image de combat de poulet
.setDescription(`Vous avez misé \`${mise}\` sur votre poulet. Les poulets se battent...\nRésultat dans 7.5 secondes...`)
.setColor(color)
.setTimestamp()
.setFooter({ text: `Demandé par ${message.author.tag}`, iconURL: message.author.displayAvatarURL() })
return message.reply({ embeds: [embed], allowedMentions: { repliedUser: false } })
});
await new Promise(resolve => setTimeout(resolve, 7500));
const result = Math.floor(Math.random() * 2);
let win = '';
if (result === 0) {
win = true;
} else {
win = false;
}
let gain = 0;
if (win == true) {
gain = Math.round(mise * 2);
} else {
gain = 0 - mise;
}
await new Promise((resolve, reject) => {
db.run(`UPDATE users SET pocket = pocket + ? WHERE userId = ? AND guildId = ?`, [gain, message.author.id, message.guild.id], (err) => {
if (err) {
reject(err);
} else {
resolve();
}
});
});
if (gain >= 0) {
embedColor(message.author.id, message.guild.id).then(color => {
const embed = new EmbedBuilder()
.setTitle('🐔 Poulet')
.setDescription(`Vous avez misé \`${mise}\` sur votre poulet et votre poulet a gagné ! Vous avez gagné \`${gain}\`coins !`)
.setColor(color)
.setTimestamp()
.setFooter({ text: `Demandé par ${message.author.tag}`, iconURL: message.author.displayAvatarURL() })
message.reply({ embeds: [embed], allowedMentions: { repliedUser: false } })
});
return
} else {
embedColor(message.author.id, message.guild.id).then(color => {
const embed = new EmbedBuilder()
.setTitle('🐔 Poulet')
.setDescription(`Vous avez misé \`${mise}\` sur votre poulet et votre poulet a perdu. Vous avez perdu \`${0 - gain}\`coins !`)
.setColor(color)
.setTimestamp()
.setFooter({ text: `Demandé par ${message.author.tag}`, iconURL: message.author.displayAvatarURL() })
message.reply({ embeds: [embed], allowedMentions: { repliedUser: false } })
});
return
}
}
};
+14 -7
View File
@@ -7,8 +7,10 @@ module.exports = {
name: Events.ClientReady,
async execute(client) {
console.log(`[READY] ${client.user.tag} est prêt ||| ${client.guilds.cache.size} serveurs | ${client.guilds.cache.reduce((acc, guild) => acc + guild.memberCount, 0)} utilisateurs\n`.green);
loggT(`[READY] ${client.user.tag} est prêt ||| ${client.guilds.cache.size} serveurs | ${client.guilds.cache.reduce((acc, guild) => acc + guild.memberCount, 0)} utilisateurs\n`)
loggT(`\n\n`)
loggT(`[READY] ${client.user.tag} est prêt ||| ${client.guilds.cache.size} serveurs | ${client.guilds.cache.reduce((acc, guild) => acc + guild.memberCount, 0)} utilisateurs`);
console.log('setPresence : ...')
client.user.setPresence({
activities: [{
name: '/azelie',
@@ -17,17 +19,21 @@ module.exports = {
}],
status: 'online'
});
console.log('setPresence : OK')
client.guilds.cache.forEach(guild => {
console.log('BD update : ...')
db.run(`INSERT OR IGNORE INTO config (guildId, name, value) VALUES (?, ?, ?)`, [guild.id, 'prefix', '&']);
guild.members.cache.forEach(member => {
db.run(`INSERT OR IGNORE INTO users (guildId, userId) VALUES (?, ?)`, [guild.id, member.id]);
});
console.log('BD update : OK')
});
setInterval(async () => {
console.log('Recompense vocal : ...')
client.guilds.cache.forEach(guild => {
guild.members.cache.filter(member => member.voice.channel).forEach(member => {
if (member.voice.selfMute == true) {
@@ -49,9 +55,11 @@ module.exports = {
db.run('UPDATE users SET xp = xp + 20 WHERE guildId = ? AND userId = ?', [guild.id, member.id]);
});
});
console.log('Recompense vocal : OK')
}, 15 * 60 * 1000);
setInterval(async () => {
console.log('Bâtiment : ...')
const team = await new Promise((resolve, reject) => {
db.get(`SELECT * FROM teams`, (err, row) => {
if (err) reject(err);
@@ -60,7 +68,8 @@ module.exports = {
});
if (team.location == 0) return
db.run(`UPDATE teams SET bank = bank + ? WHERE guildId = ? AND userId = ?`, [team.location, message.guild.id, message.author.id]);
db.run(`UPDATE teams SET bank = bank + ?`, [team.location]);
console.log('Bâtiment : OK')
}, 1 * 60 * 1000)
//AntiCrash
@@ -68,7 +77,7 @@ module.exports = {
if (error.code == "10064") return
if (error.code == "10008") return
console.log(' [antiCrash] :: Unhandled Rejection/Catch'.red);
console.log(error);
console.log(`${error}`.grey);
loggE(error)
});
@@ -76,7 +85,7 @@ module.exports = {
if (error.code == "10064") return
if (error.code == "10008") return
console.log(' [antiCrash] :: Uncaught Exception/Catch'.red);
console.log(error);
console.log(`${error}`.grey);
console.log('Information supplémentaire:', origin);
loggE(error)
});
@@ -85,7 +94,7 @@ module.exports = {
if (error.code == "10064") return
if (error.code == "10008") return
console.log(' [antiCrash] :: Uncaught Exception Monitor/Catch'.red);
console.log(error);
console.log(`${error}`.grey);
console.log('Information supplémentaire:', origin);
loggE(error)
});
@@ -95,7 +104,6 @@ module.exports = {
if (error.code == "10008") return
console.log(' [antiCrash] :: Before Exit'.red);
console.log('Code de sortie:', code);
loggE(error)
});
process.on('exit', (code) => {
@@ -103,7 +111,6 @@ module.exports = {
if (error.code == "10008") return
console.log(' [antiCrash] :: Exit'.red);
console.log('Code de sortie:', code);
loggE(error)
});
},
-1
View File
@@ -1,4 +1,3 @@
[ERROR] || 20/051/2024 =>> 18h 37m 19s 514ms || TypeError: team.forEach is not a function
[ERROR] || 20/051/2024 =>> 18h 37m 19s 551ms || TypeError: team.forEach is not a function
[ERROR] || 20/051/2024 =>> 18h 37m 19s 628ms || TypeError: team.forEach is not a function
Binary file not shown.