Advertisement
Guest User

Untitled

a guest
Jan 19th, 2018
124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. fs.readdir("./cmds/", (err, files) => {
  2.     if(err) console.error(err);
  3.  
  4.     let jsfiles = files.filter(f => f.split(".").pop() === "js");
  5.     if(jsfiles.length <= 0) {
  6.         console.log("No commands to load.");
  7.         return;
  8.     }
  9.  
  10.     console.log(`Loading ${jsfiles.length} commands.`)
  11.  
  12.     jsfiles.forEach((f, i) => {
  13.         let props = require(`./cmds/${f}`);
  14.         console.log(`${i + 1}: ${f} loaded.`)
  15.         bot.commands.set(props.help.name, props);
  16.     });
  17. });
  18.  
  19.  
  20. bot.on('ready', async () => {
  21.   console.log('I am ready!');
  22.  
  23. try {
  24.         let link = await bot.generateInvite(["ADMINISTRATOR"]);
  25.         console.log(link);
  26.     } catch(e) {
  27.         console.log(e.stack);
  28.     }
  29. });
  30. //DATABASE
  31. var con = mysql.createConnection({
  32.     host: "localhost",
  33.     user: "root",
  34.     password: "1234",
  35.     database: "sadb"
  36. });
  37.  
  38. con.connect(err => {
  39.  
  40.     console.log("connected to database");
  41.     con.query("SHOW TABLES", console.log);
  42. });
  43. //END DATABASE
  44.  
  45. function generateXP(){
  46.     let min = 10;
  47.     let max = 30;
  48.  
  49.     return Math.floor(Math.random() * (max - min + 1)) + min;
  50.     }
  51. // Read chat / message reader
  52. bot.on('message', async message => {
  53.     if(message.author.bot) return;
  54.     if(message.channel.type === "dm") return;
  55.  
  56.     con.query(`SELECT * FROM xp WHERE id = '${message.author.id}'`, (err, rows) =>{
  57.  
  58.  
  59.         let sql;
  60.  
  61.         if(rows.length < 1){
  62.             sql = `INSERT INTO xp (id, xp) VALUES ('${message.author.id}', ${generateXP()})`;
  63.         } else {
  64.             // PREVIOUS XP
  65.             let xp = rows[0].xp;
  66.             sql = `UPDATE xp SET xp = ${xp + generateXP()} WHERE id = '${message.author.id}'`;
  67.         }
  68.  
  69.         con.query(sql);
  70.     });
  71.  
  72.     if(/(?:https?:\/)?discord(?:app.com\/invite|.gg)/gi.test(message.content)){
  73.         message.delete();
  74.         return;
  75.     }
  76.  
  77.     let messageAarray = message.content.split(/\s+/g);
  78.     let command = messageArray[0];
  79.     let args = messageArray(1);
  80.  
  81.     if(!command.startsWith(prefix)) return;
  82.     let limit = bot.ratelimits.get(message.author.id);
  83.     let now = Date.now();
  84.     let timeLimit = 2000;
  85.  
  86.     if(limit != null){
  87.         if(limit >= now - timelimit) {
  88.             message.delete();
  89.             return message.channel.send("RATELIMITED")
  90.  
  91.         } else {
  92.             bot.ratelimits.set(message.author.id, now);
  93.  
  94.         }
  95.     } else {
  96.         bot.ratelimits.set(message.author.id, now);
  97.     }
  98.     let cmd = bot.comands.get(command.slice(prefix.length));
  99.     if(cmd) cmd.run(bot, message, args, con);
  100.  
  101. });
  102.  
  103. bot.login(token);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement