Fera

Untitled

Jul 12th, 2016
205
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var Discord = require("discord.js");
  2. var jsonfile = require("jsonfile");
  3. var util = require('util')
  4. var fs = require('fs');
  5. var prompt = require('prompt');
  6. var notifier = require('node-notifier');
  7. var path = require('path');
  8.  
  9. var mybot = new Discord.Client({ autoReconnect: true });
  10.  
  11. var buh = 0;
  12. var googs = jsonfile.readFileSync("googs.json");
  13. var muricas = jsonfile.readFileSync("muricas.json");
  14. var commands = jsonfile.readFileSync("commands.json");
  15. var kill = jsonfile.readFileSync("kill.json");
  16. var lead = jsonfile.readFileSync("lead.json");
  17. var help = "";
  18. var muh = "";
  19. var kuh = 0;
  20. var boing = "";
  21. var boing1 = "";
  22. var yuhgh = 0;
  23. var joincool = 0;
  24.  
  25. var doublepost = 0;
  26. var gungle = 0;
  27. var eek = 0;
  28. var clock = 0;
  29. var chan = 0;
  30. var bimbum = "";
  31. var bulg = 30;
  32. var hp = [20, 20];
  33. var coin = 0;
  34. var duelsend = "";
  35. var duelers = ["", ""];
  36. var to;
  37. var attack = 0;
  38. var firstmove = 0;
  39. var polasd = 0
  40. var rank = [];
  41. var boing2 = 0;
  42. var ruh = 0;
  43. var duh = "";
  44. var fedora = 0;
  45. setInterval(function(){
  46.     clock++
  47.     bulg++
  48.     if(clock === 10){
  49.         joincool = 1;
  50.         console.log("mghgh");
  51.     }
  52.     if(bulg === 31){
  53.         console.log("bulg")
  54.     }
  55. }, 1000)
  56. function clone(a) {
  57.    return JSON.parse(JSON.stringify(a));
  58. }
  59. function helping(){
  60.     for(i = 0; i < commands.sent.length; i++){
  61.         help += "`" + commands.sent[i] + "` "
  62.     }
  63. }
  64. function random(min, max) {
  65.     return Math.floor(Math.random() * (max - min + 1)) + min;
  66. }
  67. function base64_encode(file) {
  68.     // read binary data
  69.     var bitmap = fs.readFileSync(file);
  70.     // convert binary data to base64 encoded string
  71.     return new Buffer(bitmap).toString('base64');
  72. }
  73. function sortWins(a,b) {
  74.     return a.wins - b.wins;
  75. }
  76. function duel() {
  77.     if(coin === 0 && hp[0] > 0 && hp[1] > 0){
  78.         if(firstmove === 0){
  79.             duelsend += "Coin flip says " + duelers[0] + " will go first.\r"
  80.         }
  81.         firstmove = 1;
  82.         fedora = random(0, 1000);
  83.         if(fedora === 0){
  84.             hp[1] -= 1000
  85.             duelsend += duelers[0] + " uses Fedora Tip on " + duelers[1] + ", deals 1000 damage."
  86.         }
  87.         else{
  88.             attack = random(0, kill.spell.length - 1)
  89.             duelsend += duelers[0] + "[" + hp[0] + "]" + " uses " + kill.spell[attack]
  90.             if(kill.hurt[attack] > 0){
  91.                 duelsend += " on " + duelers[1] + "[" + hp[1] + "]" + ", deals " + kill.hurt[attack] + " damage"
  92.                 hp[1] -= kill.hurt[attack]
  93.                 if(kill.heal[attack] === 0){duelsend += "."}
  94.             }
  95.             if(kill.heal[attack] > 0){
  96.                 hp[0] += kill.heal[attack]
  97.                 duelsend += ", heals " + kill.heal[attack] + " damage."
  98.             }
  99.         }
  100.         duelsend += "\r"
  101.         coin = 1;
  102.         if(hp[1] <= 0.0){
  103.             duelsend += duelers[1] + "[" + hp[1] + "]" + " has been defeated, " + duelers[0] + "[" + hp[0] + "]" + " wins."
  104.             if(to.mentions[0] != null){
  105.                 for(i = 0; i < lead.length; i++){
  106.                     if(lead[i].id === to.mentions[0].id){
  107.                         if(to.mentions[1] === undefined){
  108.                             lead[i].wins += 1
  109.                         }
  110.                         else if(to.mentions[0].id !== to.mentions[1].id){
  111.                             lead[i].wins += 1
  112.                         }
  113.                         polasd = 1
  114.                     }
  115.                    
  116.                 }
  117.                 if(polasd === 0){
  118.                     if(to.mentions[1] === undefined){
  119.                         lead[lead.length] = {}
  120.                         lead[lead.length - 1].name = to.mentions[0].name
  121.                         lead[lead.length - 1].id = to.mentions[0].id
  122.                         lead[lead.length - 1].wins = 1
  123.                     }
  124.                     else if(to.mentions[0].id != to.mentions[1].id){
  125.                         lead[lead.length] = {}
  126.                         lead[lead.length - 1].name = to.mentions[0].name
  127.                         lead[lead.length - 1].id = to.mentions[0].id
  128.                         lead[lead.length - 1].wins = 1
  129.                     }
  130.                 }
  131.             }
  132.             polasd = 0
  133.             jsonfile.writeFileSync("lead.json", lead);
  134.             mybot.sendMessage(to, duelsend)
  135.         }
  136.         if(hp[1] > 0.0){
  137.             duel();
  138.         }
  139.     }
  140.     if(coin === 1 && hp[0] > 0 && hp[1] > 0){
  141.         if(firstmove === 0){
  142.             duelsend += "Coin flip says " + duelers[1] + " will go first.\r"
  143.         }
  144.         firstmove = 1;
  145.         fedora = random(0, 1000);
  146.         if(fedora === 0){
  147.             hp[0] -= 1000
  148.             duelsend += duelers[1] + " uses Fedora Tip on " + duelers[0] + ", deals 1000 damage."
  149.         }
  150.         else{
  151.             attack = random(0, kill.spell.length - 1)
  152.             duelsend += duelers[1] + "[" + hp[1] + "]" + " uses " + kill.spell[attack]
  153.             if(kill.hurt[attack] > 0){
  154.                 duelsend += " on " + duelers[0] + "[" + hp[0] + "]" + ", deals " + kill.hurt[attack] + " damage"
  155.                 hp[0] -= kill.hurt[attack]
  156.                 if(kill.heal[attack] === 0){duelsend += "."}
  157.             }
  158.             if(kill.heal[attack] > 0){
  159.                 hp[1] += kill.heal[attack]
  160.                 duelsend += ", heals " + kill.heal[attack] + " damage."
  161.             }
  162.         }
  163.         duelsend += "\r"
  164.         coin = 0;
  165.         if(hp[0] <= 0.0){
  166.             duelsend += duelers[0] + "[" + hp[0] + "]" + " has been defeated, " + duelers[1] + "[" + hp[1] + "]" + " wins."
  167.             if(to.mentions[1] != null){
  168.                 for(i = 0; i < lead.length; i++){
  169.                     if(lead[i].id === to.mentions[1].id){
  170.                         if(to.mentions[1] === undefined){
  171.                             lead[i].wins += 1
  172.                         }
  173.                         else if(to.mentions[0].id !== to.mentions[1].id){
  174.                             lead[i].wins += 1
  175.                         }
  176.                         polasd = 1
  177.                     }
  178.                 }
  179.                 if(polasd === 0){
  180.                     if(to.mentions[0] === undefined){
  181.                         lead[lead.length] = {}
  182.                         lead[lead.length - 1].name = to.mentions[1].name
  183.                         lead[lead.length - 1].id = to.mentions[1].id
  184.                         lead[lead.length - 1].wins = 1
  185.                     }
  186.                     else if(to.mentions[0].id != to.mentions[1].id){
  187.                         lead[lead.length] = {}
  188.                         lead[lead.length - 1].name = to.mentions[1].name
  189.                         lead[lead.length - 1].id = to.mentions[1].id
  190.                         lead[lead.length - 1].wins = 1
  191.                     }
  192.                 }
  193.             }
  194.             polasd = 0
  195.             jsonfile.writeFileSync("lead.json", lead);
  196.             mybot.sendMessage(to, duelsend)
  197.         }
  198.         if(hp[0] > 0.0){
  199.             duel();
  200.         }
  201.     }
  202. }
  203. helping();
  204. mybot.on("voiceJoin", function(channel,user){
  205.     if(channel.server.id === "163175631562080256" && joincool === 1){
  206.         if(channel.server.detailsOfUser(user).nick != null){
  207.             mybot.sendMessage("170094554509344770", "**" + channel.server.detailsOfUser(user).nick + "** has joined **" + channel.name + "**.");
  208.         }
  209.         else{
  210.             mybot.sendMessage("170094554509344770", "**" + user.name + "** has joined **" + channel.name + "**.");
  211.         }
  212.     }
  213.     var thething = 0
  214.     if(thething === 0){
  215.         mybot.setPlayingGame("Duel Simulator")
  216.         thething = 1
  217.     }
  218.     if(channel.server.detailsOfUser(user).nick != null){
  219.         console.log(channel.server.detailsOfUser(user).nick + " has joined " + channel.name);
  220.     }
  221.     else{
  222.         console.log(user.name + " has joined " + channel.name);
  223.     }
  224. });
  225.  
  226. mybot.on("voiceLeave", function(channel,user){
  227.     console.log(user.name + " has left " + channel.name);
  228. });
  229. var uuu = 0;
  230. mybot.on("message", function(message){
  231.     pilop = message.content;
  232.     bimbum = message.content.split(" ");
  233.     if(uuu === 0 && message.channel.server.id === "163175631562080256"){
  234.         chan = message.channel.server
  235.         uuu = 1
  236.     }
  237.     if(message.channel.name === "2hujerk" || message.channel.name === "random" || message.channel.name === "modtalk" || message.channel.name === "blameshred" || message.author.name === "Guy Hero" || mybot.memberHasRole(message, "163176097360379904")){
  238.         if(message.author.name != "BorpBot" && !mybot.memberHasRole(message, "164913525695840257")){
  239.             for (i = 0; i < commands.sent.length; i++){
  240.                 if(message.content === "'" + commands.sent[i]){
  241.                     mybot.sendMessage(message, commands.imgur[i]);
  242.                     console.log(message.author.name + " said '" + commands.sent[i]);
  243.                 }
  244.             }
  245.             if(message.author.id === boing && buh === 1){
  246.                 muh = message.content;
  247.                 muh = muh.split(" ");
  248.                 commands.sent[commands.sent.length] = muh[0];
  249.                 commands.imgur[commands.imgur.length] = muh[1];
  250.                 jsonfile.writeFileSync("commands.json", commands);
  251.                 buh = 0;
  252.                 help = "";
  253.                 helping();
  254.                 boing = "";
  255.                 mybot.sendMessage(message, "Command \"'" + muh[0] + "\" added.");
  256.             }
  257.             if(message.content === "'newcommand"){
  258.                 mybot.sendMessage(message, "Enter command and image.");
  259.                 boing = message.author.id;
  260.                 buh = 1;
  261.             }
  262.  
  263.             if(message.author.id === boing1 && kuh === 1){
  264.                 muh = message.content;
  265.                 googs[googs.length] = muh;
  266.                 jsonfile.writeFileSync("googs.json", googs);
  267.                 kuh = 0;
  268.                 boing1 = "";
  269.                 mybot.sendMessage(message, "Goog added.");
  270.             }
  271.             if(message.author.id === boing2 && ruh === 1){
  272.                 duh = message.content;
  273.                 muricas[muricas.length] = duh;
  274.                 jsonfile.writeFileSync("muricas.json", muricas);
  275.                 ruh = 0;
  276.                 boing2 = "";
  277.                 mybot.sendMessage(message, "Murica added.");
  278.             }
  279.             if(message.content === "'newgoogly"){
  280.                 mybot.sendMessage(message, "Enter goog.");
  281.                 boing1 = message.author.id;
  282.                 kuh = 1;
  283.             }
  284.             if(message.content === "'googly"){
  285.                 yuhgh = random(0, googs.length - 1);
  286.                 mybot.sendMessage(message, googs[yuhgh]);
  287.                 console.log(message.author.name + " said 'googly, with result " + yuhgh);
  288.             }
  289.             if(message.content === "'googs"){
  290.                 mybot.sendMessage(message, "```" + googs +  "```");
  291.             }
  292.             if(message.content === "'newmurica"){
  293.                 mybot.sendMessage(message, "Enter murica.");
  294.                 boing2 = message.author.id;
  295.                 ruh = 1;
  296.             }
  297.             if(message.content === "'murica"){
  298.                 yuhgh = random(0, muricas.length - 1);
  299.                 mybot.sendMessage(message, muricas[yuhgh]);
  300.                 console.log(message.author.name + " said 'murica, with result " + yuhgh);
  301.             }
  302.             if(message.content === "'muricas"){
  303.                 mybot.sendMessage(message, "```" + muricas +  "```");
  304.             }
  305.             if(pilop.startsWith("'duel")){
  306.                 hp = [20, 20]
  307.                 coin = random(0, 1);
  308.                 duelsend = "";
  309.                 bimbum.splice(0, 1);
  310.                 duelers = bimbum;
  311.                 to = message;
  312.                 firstmove = 0;
  313.                 kill = jsonfile.readFileSync("kill.json");
  314.                 duel();
  315.             }
  316. /*          if(pilop.startsWith("'ranking")){
  317.                 rank = clone(lead);
  318.                 rank.sort(sortWins)
  319.                 rank.reverse();
  320.                 if(rank.length > 10){
  321.                     rank.length = 10;
  322.                 }
  323.                 var snd = "```";
  324.                 for(i = 0; i < rank.length; i++){
  325.                     snd += rank[i].name + ": " + rank[i].wins + "\r"
  326.                 }
  327.                 snd += "```"
  328.                 jsonfile.writeFileSync("lead.json", lead);
  329.                 mybot.sendMessage(message, snd)
  330.             }*/
  331.         }
  332.     }
  333.     if(message.author.name === "Guy Hero" && message.author.id === "157704875726209025"){
  334.         if(message.content === "'googslist"){
  335.             mybot.sendMessage(message, googs);
  336.         }
  337.         if(pilop.startsWith("'eval")){
  338.             console.log(message.author.name);
  339.             var eyy = message.content.split(" ");
  340.             eyy.splice(0, 1);
  341.             eyy = eyy.join(" ");
  342.             console.log(eyy);
  343.             console.log(eval(eyy));
  344.             mybot.sendMessage(message, eval(eyy));
  345.            
  346.         }
  347.     }
  348.     if(pilop.startsWith("'playing")){
  349.         var eyo = message.content.split(" ");
  350.         eyo.splice(0, 1);
  351.         eyo = eyo.join(" ");
  352.         eyo = eyo.toLowerCase();
  353.         var gluglumas1 = "";
  354.         var heyhey1 = message.author.mention();
  355.         gluglumas1 = gluglumas1 + heyhey1 + ",\r"
  356.         for(i = 0; i < message.channel.server.members.length; i++){
  357.             if(message.channel.server.members[i].game != null && message.channel.server.members[i].game.name != null){
  358.                 if(message.channel.server.members[i].game.name.toLowerCase() === eyo){
  359.                     gluglumas1 = gluglumas1 + message.channel.server.members[i].name + ", "
  360.                     var jurglg = 1;
  361.                 }
  362.             }
  363.         }
  364.         if(jurglg === 1){
  365.             mybot.sendMessage(message, gluglumas1)
  366.             console.log(message.author.name + " said 'playing");
  367.             jurglg = 0
  368.         }
  369.         else if(jurglg != 1){
  370.             mybot.sendMessage(message, heyhey1 + ",\rNo one.")
  371.         }
  372.     }
  373.     if(pilop.startsWith("'isplaying")){
  374.         var gluglumas2 = "";
  375.         var heyhey2 = message.author.mention();
  376.         gluglumas2 = gluglumas2 + heyhey2 + ",\r"
  377.         var howagh = message.mentions
  378.         if(howagh[0] != null && howagh[0].game != null){
  379.             gluglumas2 = gluglumas2 + howagh[0].name + " is playing " + howagh[0].game.name + ".\r"
  380.             mybot.sendMessage(message, gluglumas2)
  381.             console.log(message.author.name + " said 'isplaying " + howagh[0].name + ", with result " + howagh[0].game.name);              
  382.         }
  383.         else{
  384.             mybot.sendMessage(message, heyhey2 + ",\rNo game.")
  385.         }
  386.        
  387.     }
  388.     if(message.content === "'help"){
  389.         mybot.sendMessage(message, "**Memes**: " + help + "\r***Special Memes***: `googly` `murica` \r**Other**: `playing` `isplaying` `duel` \rBorpBot only calls commands with `'`");
  390.     }
  391.     if(bimbum.indexOf("googie") != -1 && bimbum.indexOf("eye") != -1 && bimbum.indexOf("bot") === -1 && bulg > 30){
  392.         mybot.sendMessage(message, "It's googly, not googie. Please.")
  393.         bulg = 0;
  394.     }
  395. });
  396. //speak thing
  397. var lastmessage;
  398. var parble = "163175631562080256";
  399. var durng = "general";
  400. var ulm = "";
  401. prompt.start();
  402. function bumpus(){
  403.     console.log(durng)
  404.     prompt.get(['send'], function (err, result) {
  405.         if (err) { return onErr(err); }
  406.         console.log('Command-line input received:');
  407.         console.log('  message ' + result.send);
  408.         if(result.send === "del"){
  409.             mybot.deleteMessage(lastmessage)
  410.         }
  411.         else if(result.send.startsWith("channel")){
  412.             parble = result.send.split(" ");
  413.             parble.splice(0, 1);
  414.             parble = parble.join(" ");
  415.             var chanumber = chan.channels.length - 1
  416.             for(i = 0; i < chanumber; i++){
  417.                 if(parble === chan.channels[i].id){
  418.                     durng = chan.channels[i].name
  419.                 }
  420.             }
  421.         }
  422. /*      else if(result.send.startsWith("fakeleave")){
  423.             ulm = result.send.split(" ");
  424.             ulm.splice(0, 1);
  425.             ulm = ulm.join(" ");
  426.             mybot.setNickname("163175631562080256", "RoboNitori")
  427.             mybot.setAvatar(base64_encode("robo.jpg"))
  428.             setTimeout(function(){
  429.                 mybot.sendMessage(parble, "**" + ulm + "** has left the server.", function(err, mess){lastmessage = mess;})
  430.                 setTimeout(function(){
  431.                     mybot.setNickname("163175631562080256", "BorpBot")
  432.                     mybot.setAvatar(base64_encode("borp.jpg"))
  433.                 }, 2000);
  434.             }, 2000);
  435.         }*/
  436.         else{
  437.             mybot.sendMessage(parble, result.send, function(err, mess){lastmessage = mess;});
  438.             console.log(parble);
  439.         }
  440.         bumpus();
  441.     });
  442. }
  443. setTimeout(function(){bumpus();}, 11000)
  444. //end of speak thing
Advertisement
Add Comment
Please, Sign In to add comment