-
Notifications
You must be signed in to change notification settings - Fork 0
/
bot.js
46 lines (41 loc) · 1.29 KB
/
bot.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
require('dotenv').config()
const Discord = require("discord.js");
const fs = require("fs");
const prefix = ".";
// End of API Keys
const bot = new Discord.Client({disableEveryone: true});
bot.login(process.env.BOT_TOKEN)
bot.commands = new Discord.Collection();
fs.readdir("./cmds/", (err, files) => {
if(err) console.error(err);
let jsfiles = files.filter(f => f.split(".").pop() === "js");
if(jsfiles.length <= 0) {
console.log("No commands to load!");
return;
}
console.log(`Loading ${jsfiles.length} commands`);
jsfiles.forEach((f, i) => {
const props = require(`./cmds/${f}`);
console.log(`${i + 1}: ${f} loaded!`);
bot.commands.set(props.help.name, props);
});
});
bot.on("ready", async () => {
console.log(`Yaaaay, let's roll! ${bot.user.username}`);
try {
let link = await bot.generateInvite(["ADMINISTRATOR"]);
console.log(link);
} catch (e) {
console.log(e.stack);
}
});
bot.on("message", async message => {
if (message.author.bot) return;
if (message.channel.type === "dm") return;
let messageArray = message.content.split(" ");
let command = messageArray[0];
let args = messageArray.slice(1);
if(!command.startsWith(prefix)) return;
let cmd = bot.commands.get(command.slice(prefix.length));
if(cmd) cmd.run(bot, message, args);
});