This repository has been archived on 2025-10-10. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
Templated.djs/events/client/ready.js

60 lines
1.4 KiB
JavaScript
Raw Normal View History

const { Routes } = require('discord-api-types/v9');
const { commandsData, commands, rest } = require('../../index');
const console = require('../../functions/meta/console');
module.exports = {
name: 'ready',
async execute(client) {
await client.application?.fetch();
const guilds = await client.guilds.cache.map(guild => guild.id);
console.debug(guilds);
for (const command of commands) {
if(!command.properties.type.includes('guild')) continue;
const clientCommand = (await client.guilds.cache.get(process.env.DEV_GUILD)?.commands.fetch()).find(c => c.name === command.data.name);
if(command.permissions) {
await clientCommand.permissions.set({ id: clientCommand.id, permissions: command.permissions });
}
command.id = clientCommand.id;
command.name = clientCommand.name;
}
for (const guild of guilds) {
if(guild.id == process.env.DEV_GUILD) continue;
try {
await rest.put(
Routes.applicationGuildCommands(process.env.CLIENT, guild), {
body: commandsData.perGuild,
},
);
}
catch (error) {
console.error(error);
}
}
console.info('Guild Commands:');
console.table(commands);
console.info('Bot configurations:');
console.table({
'Owner Id': process.env.OWNER,
'Development Guild Id': process.env.DEV_GUILD,
'Client Id': process.env.CLIENT,
});
console.info('BOT READY');
},
};