Files
bot_Tamiseur/events/ready.js

60 lines
2.3 KiB
JavaScript
Executable File

const { Events } = require('discord.js')
//const { DataTypes } = require("sequelize")
//const sequelize = require('../utils/initSequelize.js')
const generatePlayer = require('../utils/generatePlayer.js')
const getUptime = require('../utils/getUptime.js')
require('dotenv').config()
const dance = async function (bot_id, channel, embed, components) {
let messages = await channel.messages.fetch()
let botMessage = messages.find(msg => msg.author.id === bot_id)
if (!botMessage || (!components && botMessage.components.length > 0)) {
await channel.bulkDelete(messages)
return await channel.send({ embeds: [embed] })
} else await botMessage.edit({ embeds: [embed], components })
}
module.exports = {
name: Events.ClientReady,
once: true,
execute(client) {
console.log(`\u001b[1;35m Ready! Logged in as ${client.user.tag}`)
//try {
// sequelize.authenticate()
// console.log('Connection has been established successfully.')
//} catch (error) { console.error('Unable to connect to the database:', error) }
var interval = setInterval(async () => {
//client.guilds.cache.each(async guild => {
//const Data = sequelize.define(guild.id, {
// playerChannelId: DataTypes.STRING
//})
//await sequelize.sync({ force: true })
//if (!Data.playerChannelId) {
// clearInterval(interval)
// return console.log(`\u001b[1;31m Aucun channel inscrit dans la base, veuillez utiliser la commande \`/setchannel\` !`)
//}
//let channel = client.channels.cache.get(Data.playerChannelId)
let guild = client.guilds.cache.get(process.env.DISCORD_GUILD_ID)
let channel = client.channels.cache.get(process.env.DISCORD_PLAYERCHANNEL_ID)
if (!channel) {
clearInterval(interval)
return console.log(`\u001b[1;31m Error: Aucun channel trouvé avec l'id \`${process.env.DISCORD_PLAYERCHANNEL_ID}\`, veuillez utiliser la commande \`/setchannel\` !`)
}
let { embed, components } = await generatePlayer(guild)
if (components) {
embed.setFooter({ text: `Uptime: ${getUptime(client.uptime)} / ${embed.data.footer.text}` })
await dance(client.user.id, channel, embed, components)
} else {
embed.setFooter({ text: `Uptime: ${getUptime(client.uptime)}` })
await dance(client.user.id, channel, embed)
}
//})
}, 4000)
}
}