From f7970f3a9cc94600309ff48d1a920040672899a5 Mon Sep 17 00:00:00 2001 From: Alee Date: Sun, 22 Apr 2018 15:09:16 -0400 Subject: 2.9 release --- test.js | 88 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 84 insertions(+), 4 deletions(-) (limited to 'test.js') diff --git a/test.js b/test.js index 4cd42bb..f6b21f5 100644 --- a/test.js +++ b/test.js @@ -20,6 +20,7 @@ const Discord = require('discord.js'); const economy = require('discord-eco'); const moment = require('moment'); +const readline = require('readline'); const DBL = require("dblapi.js"); const client = new Discord.Client({ disableEveryone: true @@ -33,7 +34,13 @@ const log = message => { }; -console.log('AleeBot: Copyright (C) 2018 AleeCorp'); +const rl = readline.createInterface({ + input: process.stdin, + output: process.stdout, + prompt: '> ' +}); + +console.log(`AleeBot ${settings.abVersion}: Copyright (C) 2018 AleeCorp`); console.log('This program comes with ABSOLUTELY NO WARRANTY; for details type `show w\'.'); console.log ('This is free software, and you are welcome to redistribute it'); console.log ('under certain conditions; type `show c\' for details.\n') @@ -75,11 +82,68 @@ fs.readdir('./commands', (err, files) => { console.log('\n'); }); +rl.on('line', function(cmd){ + var args = cmd.split(" "); + switch(args[0]) { + case "guilds": + if (client.guilds.size === 0) { + console.log(('[!] No guilds found.')); + } else { + console.log('[i] Here\'s the servers that AleeBot is connected to:') + for ([id, guild] of client.guilds) { + console.log(` Guild Name: ${guild.name} - ID: ${guild.id} - Owner: ${guild.owner.user.tag}`); + } + } + break; + case "leave": + if (!args[1]) { + console.log('[!] Please insert the guild\'s ID.'); + } else { + var guild = client.guilds.get(args[1]); + guild.leave(); + } + break; + case "broadcast": + if (!args[1]) { + console.log('[!] Please insert the guild\'s ID.'); + } else { + let broadcast = args.join(" ").slice(48); + var guild = null; + guild = client.guilds.get(args[1]); + var channel = null; + channel = guild.channels.get(args[2]) + if (channel != null) { + channel.send(broadcast); + } + if (channel = null) { + console.log ('Usage: broadcast [guildID] [channelID]') + } + } + break; + case "exit": + console.log('[i] AleeBot will now exit!') + process.exit(0); + break; + case "help": + var msg = (`AleeBot `+ settings.abVersion +` Console Help\n\n`); + msg += (`guilds - Shows all guilds that AleeBot's on.\n`) + msg += (`leave - Leaves a guild.\n`) + msg += (`broadcast - Broadcasts a message to a server.\n`) + msg += (`help - Shows this command.\n`) + msg += (`exit - Exits AleeBot.\n`) + console.log(msg); + break; + default: + console.log('Unknown Command type \'help\' to list the commands...') + } + rl.prompt(); +}); + client.on('ready', () => { log('[>] AleeBot is now ready!'); log(`[i] Logged in as ${client.user.tag}`); - log(`[i] Prefix: ${settings.prefix}`) + log(`[i] Default Prefix: ${settings.prefix}`) log(`[i] Bot ID: ${client.user.id}`); log(`[i] Token: ${api.abtoken}`); log('[i] Running version ' + settings.abVersion + ` and in ${client.guilds.size} guilds`); @@ -92,6 +156,9 @@ client.on('ready', () => { 'Drawing shapes', 'Fighting AstralMod', ]; + setInterval(() => { + dbl.postStats(client.guilds.size, client.shards.Id, client.shards.total); + }, 1800000); client.user.setPresence({ status: 'online', @@ -103,6 +170,7 @@ client.on('ready', () => { }); }, 200000); client.user.setStatus('online'); + rl.prompt(); }); client.on('guildCreate', guild => { @@ -121,8 +189,20 @@ client.on('guildDelete', guild => { client.on('message', (msg) => { if (msg.author.bot) return; - if (!msg.content.startsWith(settings.prefix)) return; - const args = msg.content.slice(settings.prefix.length).trim().split(/ +/g); + + let prefixes = JSON.parse(fs.readFileSync("./storage/prefixes.json", "utf8")); + + if(!prefixes[msg.guild.id]){ + prefixes[msg.guild.id] = { + prefixes: settings.prefix + }; + } + + let prefix = prefixes[msg.guild.id].prefixes + + + if (!msg.content.startsWith(prefix)) return; + const args = msg.content.slice(prefix.length).trim().split(/ +/g); const command = args.shift(); let cmd; -- cgit v1.2.3