-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathsyndicate.js
81 lines (62 loc) · 3.8 KB
/
syndicate.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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
const Discord = require("discord.js");
const client = new Discord.Client({ fetchAllMembers: true });
// MONITORS
const Logger = require("./Monitors/console-monitor.js"); // Monitoring System for Console.Logs
require("./Monitors/command-reloader.js")(client); // Automated Command Reloader
require("./Monitors/event-reloader.js")(client); // Automated Event Reloader
// CONFIGURATION
client.auth = require("./Settings/authentication.json"); // Bot Token, API Keys, Etc
client.default = require("./Settings/default-options.json"); // Your bots default settings such as prefix.
client.ascii = require("./Settings/ascii-console.json");// Changable ASCII Font
client.packages = require("./package.json"); // Required to get Bot's Current Version. (DO NOT REMOVE)
client.database = require("./Database/sql.js"); // Database Setup & Functions
client.footer = `Developed By Syndicate Corp • My Default Prefix: ${client.default.prefix}`; // Footer of each Embed.
const DBL = require("dblapi.js");
client.dbl = new DBL(client.auth.DBLToken, client);
client.dbl.on('posted', () => {
console.log(`Server count of ${client.guilds.size} posted to DBL!`);
})
client.dbl.on('error', e => {
console.log(`Oops! ${e}`);
})
// COLLECTERS
client.commands = new Discord.Collection(); // Collecter for the commands.
client.aliases = new Discord.Collection();
//ADMINISTRATOR COMMANDS
client.commands.set('config', require('./Commands/Administrator/config.js'));// Guild Configuration System
client.commands.set('logs', require('./Commands/Administrator/logs.js'));// Guild Logs System
client.commands.set('mod', require('./Commands/Administrator/mod.js'));// Guild ModLogs System
client.commands.set('welcome', require('./Commands/Administrator/welcome.js'));// Guild Welcome/Leave Log System
client.commands.set('setprefix', require('./Commands/Administrator/setprefix.js'));// Guild Custom Prefix System
//DEVELOPER COMMANDS
client.commands.set('eval', require('./Commands/Developer/eval.js'));// Evaluate Code System
//GENERAL USE COMMANDS
client.commands.set('help', require('./Commands/General/help.js'));// Help Menu
client.commands.set('info', require('./Commands/General/info.js'));// Bot Statistics
client.commands.set('rank', require('./Commands/General/rank.js'));// Rank (Levelling System)
client.commands.set('bl', require('./Commands/Developer/bl.js'));// Blacklist (Global-Use)
client.commands.set('ubl', require('./Commands/Developer/ubl.js'));// Unblacklist (Global-Use)
// ERROR CONTROLLING
client.on("error", (error) => console.error(error));
// client.on("warn", (warn) => console.warn(warn));
// client.on("debug", (debug) => console.debug(debug));
//EVENTS
// *READY STATE*
client.on('ready', () => require('./Events/ready.js')(client));
// MESSAGE
client.on('message', message => require(`./Events/message.js`)(client, message));
client.on('messageDelete', message => require('./Events/messageDelete.js')(client, message));
client.on('messageUpdate', (oldMessage, newMessage) => require('./Events/messageUpdate.js')(client, oldMessage, newMessage));
// GUILD EVENTS
client.on('guildMemberAdd', member => require('./Events/guildMemberAdd.js')(client, member));
client.on('guildMemberRemove', member => require('./Events/guildMemberRemove.js')(client, member));
client.on('guildCreate', guild => require('./Events/guildCreate.js')(client, guild));
client.on('guildDelete', member => require('./Events/guildDelete.js')(client, member));
process.on('unhandledRejection', (error) => {
Logger("[UNHANDLED REJECTION] " + (error.stack == undefined ? error.stack : error.stack), "warn");
});
process.on('uncaughtException', (err) => {
Logger("[UNCAUGHT EXCEPTION] " + (err.stack == undefined ? err : err.stack), "critical");
});
//LOGIN TO DISCORD
client.login(client.auth.token);