first commit
This commit is contained in:
12
functions/commands.js
Normal file
12
functions/commands.js
Normal file
@ -0,0 +1,12 @@
|
||||
const { readdirSync } = require("fs");
|
||||
const { join } = require("path");
|
||||
const filePath = join(__dirname, "..", "commands");
|
||||
const fs = require("fs");
|
||||
|
||||
const functions = require("../functions/functions.js");
|
||||
|
||||
module.exports.run = (bot) => {
|
||||
functions.loadCommands(bot, `${filePath}/Utilities/`);
|
||||
|
||||
|
||||
}
|
16
functions/events.js
Normal file
16
functions/events.js
Normal file
@ -0,0 +1,16 @@
|
||||
const { readdirSync } = require("fs");
|
||||
const { join } = require("path");
|
||||
const eventDir = join(__dirname, "..", "events");
|
||||
|
||||
module.exports.run = (bot) => {
|
||||
const eventFiles = readdirSync(eventDir);
|
||||
|
||||
for(const eventFile of eventFiles) {
|
||||
const event = require(`${eventDir}/${eventFile}`);
|
||||
const eventName = eventFile.split(".").shift();
|
||||
bot.on(eventName, event.bind(null, bot));
|
||||
delete require.cache[require.resolve(`${eventDir}/${eventFile}`)];
|
||||
}
|
||||
bot.events = eventFiles.length;
|
||||
console.log(`Loaded ${eventFiles.length} events !`);
|
||||
}
|
29
functions/functions.js
Normal file
29
functions/functions.js
Normal file
@ -0,0 +1,29 @@
|
||||
const Discord = require("discord.js");
|
||||
const fs = require("fs");
|
||||
const color = JSON.parse(fs.readFileSync(`Storage/color.json`, `utf8`));
|
||||
|
||||
module.exports = {
|
||||
|
||||
loadCommands: function(bot, dirname) {
|
||||
fs.readdir(dirname, (err, files) => {
|
||||
if(err) console.error(err);
|
||||
var jsFiles = files.filter(f => f.split(".").pop() === "js");
|
||||
if(jsFiles.length <= 0){
|
||||
console.log(`No command to load in the folder : ${dirname.replace(/.\/commands\//gi, "")}`);
|
||||
return;
|
||||
}
|
||||
|
||||
jsFiles.forEach((f, i) => {
|
||||
delete require.cache[require.resolve(`${dirname}${f}`)];
|
||||
var props = require(`${dirname}${f}`);
|
||||
console.log(`${i + 1}: ${f} Loaded`);
|
||||
bot.commands.set(props.help.name, props);
|
||||
|
||||
if(props.help.aliases) for (const alias of props.help.aliases){
|
||||
bot.aliases.set(alias, props);
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
}
|
Reference in New Issue
Block a user