const { Events, ActivityType } = require('discord.js'); const db = require('../fonctions/database.js'); var loggT = require('../loggerT.js'); var loggE = require('../loggerE.js'); module.exports = { name: Events.ClientReady, async execute(client) { console.log(`[READY] ${client.user.tag} est prêt ||| ${client.guilds.cache.size.toLocaleString('fr-FR')} serveurs | ${client.guilds.cache.reduce((acc, guild) => acc + guild.memberCount, 0).toLocaleString('fr-FR')} 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`); console.log('setPresence : ...') client.user.setPresence({ activities: [{ name: '/azelie', type: ActivityType.Streaming, url: 'https://twitch.tv/tuturp33' }], 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, guildName, userId, userName) VALUES (?, ?, ?, ?)`, [guild.id, guild.name, member.id, member.name]); }); 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) { db.run('UPDATE users SET pocket = pocket + 50 WHERE guildId = ? AND userId = ?', [guild.id, member.id]); db.run('UPDATE users SET xp = xp + 5 WHERE guildId = ? AND userId = ?', [guild.id, member.id]); } else { db.run('UPDATE users SET pocket = pocket + 100 WHERE guildId = ? AND userId = ?', [guild.id, member.id]); db.run('UPDATE users SET xp = xp + 10 WHERE guildId = ? AND userId = ?', [guild.id, member.id]); } }); guild.members.cache.filter(member => member.voice.channel && member.voice.streaming).forEach(member => { db.run('UPDATE users SET pocket = pocket + 200 WHERE guildId = ? AND userId = ?', [guild.id, member.id]); db.run('UPDATE users SET xp = xp + 20 WHERE guildId = ? AND userId = ?', [guild.id, member.id]); }); guild.members.cache.filter(member => member.voice.channel && member.voice.selfVideo).forEach(member => { db.run('UPDATE users SET pocket = pocket + 200 WHERE guildId = ? AND userId = ?', [guild.id, member.id]); 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); resolve(row); }); }); if (team.location == 0) return db.run(`UPDATE teams SET bank = bank + ?`, [team.location]); console.log('Bâtiment : OK') }, 1 * 60 * 1000) //AntiCrash process.on('unhandledRejection', (error) => { if (error.code == "10064") return if (error.code == "10008") return console.log(' [antiCrash] :: Unhandled Rejection/Catch'.red); console.log(`${error}`.grey); loggE(error) }); process.on("uncaughtException", (error, origin) => { if (error.code == "10064") return if (error.code == "10008") return console.log(' [antiCrash] :: Uncaught Exception/Catch'.red); console.log(`${error}`.grey); console.log('Information supplémentaire:', origin); loggE(error) }); process.on('uncaughtExceptionMonitor', (error, origin) => { if (error.code == "10064") return if (error.code == "10008") return console.log(' [antiCrash] :: Uncaught Exception Monitor/Catch'.red); console.log(`${error}`.grey); console.log('Information supplémentaire:', origin); loggE(error) }); process.on('beforeExit', (code) => { if (error.code == "10064") return if (error.code == "10008") return console.log(' [antiCrash] :: Before Exit'.red); console.log('Code de sortie:', code); }); process.on('exit', (code) => { if (error.code == "10064") return if (error.code == "10008") return console.log(' [antiCrash] :: Exit'.red); console.log('Code de sortie:', code); }); }, };