h0rnet

.:[JS] Xat Bot PUBLIC release v2 [JS]:.

Apr 13th, 2013
443
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.     // ==UserScript==
  2.     // @name           JSXatBot
  3.     // @namespace      JSBot
  4.     // @author         3nvisi0n & edited by H0rnet
  5.     // @require        https://mo-bot.googlecode.com/hg/jquery-1.7.1.js
  6.     // @include        http://m.xat.com:10049/*
  7.     // ==/UserScript==
  8.  
  9. //////////////////////////////////////////    
  10. // Don't know how to set it up?     //
  11. // Here's my tut on how to set it up:   //
  12. // http://pastebin.com/NA70ry9p     //
  13. //////////////////////////////////////////
  14.  
  15.     //////////////////
  16.     //---SETTINGS---//
  17.     //////////////////
  18.     jQuery.noConflict();
  19.     var startMilliseconds = jQuery.now();
  20.     var startSeconds = startMilliseconds / 1000;
  21.     var cmdChar = "!"; //Character that starts all commands
  22.     var BUFFER_TIME = 3; //How long to wait before parsing messages(so we don't parse old ones)
  23.     onload=autoWelcome;
  24.      
  25.     document.getElementById("msg").style.color = "red";
  26.     document.getElementById("tabs").style.color = "green";
  27.     document.getElementById("fillMe").style.color = "gold";
  28.     document.body.style.background = "#A4A4A4";
  29.      
  30.     AddMessB = unsafeWindow.AddMess;//don't change this is needed for overload
  31.     var startTime = time(); //Used so we don't parse old messages
  32.     var lastTab = 0;
  33.      
  34.     String.prototype.between = function(prefix, suffix) {
  35.       s = this;
  36.       var i = s.indexOf(prefix);
  37.       if (i >= 0) {
  38.         s = s.substring(i + prefix.length);
  39.       }
  40.       else {
  41.         return '';
  42.       }
  43.       if (suffix) {
  44.         i = s.indexOf(suffix);
  45.         if (i >= 0) {
  46.           s = s.substring(0, i);
  47.         }
  48.         else {
  49.           return '';
  50.         }
  51.       }
  52.       return s;
  53.     }
  54.     //grabs the unix timestamp
  55.     function time() {
  56.         return Math.round((new Date()).getTime() / 1000);    
  57.     }
  58.      
  59.     //Big switch for all cmd handling
  60.     function handleCommand(cmd,argu,id) {
  61.         words = argu.split(" ");
  62.  
  63.         switch(cmd.toLowerCase())
  64.  
  65.         case "yell":
  66.         case "say": respond(argu); break;
  67.  
  68.     case "info": respond("Originally made by 3nvisi0n and edited by H0rnet"); break;   
  69.  
  70.     case "cookie": //not this will execute the same thing as the case under
  71.     case "cookies": respond("H0rnet likes cookies.."); break;  
  72. // ^ if somebody says "!cookies", answer will be "H0rnet likes cookies.."
  73.  
  74.         case "kick": kick(argu,"Because H0rnet decided so."); break;
  75.         case "ban": ban(argu,"Because H0rnet decided so.", args[1]); break;
  76.         case "member": member(argu);  break;
  77.         case "guest": guest(argu);  break;
  78.         case "mod": mod(argu);  break;
  79.         case "unban": unban(argu); break;
  80.  
  81.     case "dice": dice(id); break;
  82. //if command is "!dice", function dice() is called, and the id of the user also.
  83.  
  84.     case "reboot": Reb00t(); break;
  85.  
  86.         case "md5": crypto( argu, "MD5" ); break;
  87.     case "sha1": crypto( argu, "SHA1" ); break;
  88.     case "sha256": crypto( argu, "SHA256" ); break;
  89.     case "sha384": crypto( argu, "SHA384" ); break;
  90.     case "sha512": crypto( argu, "SHA512" ); break;
  91.     case "md2": crypto( argu, "MD2" ); break;
  92.  
  93.         case "time":
  94.         case "date": datetime(); break;
  95.  
  96.         case "i":
  97.         case "insult": insult( argu ); break;
  98.  
  99.     case "myspace": respond("http://www.myspace.com/"); break;
  100.     case "xat": respond("http://xat.com/"); break;
  101.     case "mypastebin": respond("http://pastebin.com/u/H0rnet"); break;
  102.     case "facebook": respond("http://www.facebook.com"); break;
  103.     case "twitter": respond("http://www.twitter.com/"); break;
  104.  
  105.     case "bottut": respond("http://pastebin.com/tk65hifC"); break;
  106.     case "botpublicrelease": respond("http://pastebin.com/kPQcekcS"); break;
  107.    
  108.  
  109.     case "xatbotautologin":
  110.         case "mobilebotautologin":
  111.         case "mbal":
  112.         case "mbautologin":
  113.         case "autologin": respond("http://pastebin.com/s8dr4MXG"); break;
  114.         }
  115.     }
  116.      
  117.     //Overloads display function
  118.     unsafeWindow.AddMess = function AddMess(tab, s)
  119.     {
  120.         curTime = time();
  121.         last = s.between("(",")");
  122.         if(curTime >= startTime+BUFFER_TIME) { //Don't start parsing until BUFFER_TIME s has passed
  123.             var id = tab;
  124.             if(tab==0) id = s.between("(",")");
  125.             lastTab = tab;
  126.             if(s.indexOf("<B>")>=0) {
  127.                 var msg = s.between("<B>","</B>")+" ";
  128.                 if(msg.charAt(0) == cmdChar) {
  129.                     var cmd = msg.substring(1,msg.indexOf(" "));
  130.                     handleCommand(cmd,msg.substring(msg.indexOf(" ")+1),id);
  131.                 }
  132.             }
  133.         }
  134.         AddMessB(tab,s);
  135.     }
  136.      
  137.     ////////////////////////
  138.     //MODERATION FUCNTIONS//
  139.     ////////////////////////
  140.     function kick(id,reason) {
  141.         unsafeWindow.DoMessage(id, '/k', reason);  
  142.     }
  143.     function ban(id,reason,time) {
  144.         unsafeWindow.DoMessage(id, '/g'+(time*3600), reason);  
  145.     }
  146.     function guest(id) {
  147.         unsafeWindow.DoMessage(id, '/r', '');    
  148.     }
  149.     function member(id) {
  150.         unsafeWindow.DoMessage(id, '/e', '');    
  151.     }
  152.     function mod(id) {
  153.         unsafeWindow.DoMessage(id, '/m', '');    
  154.     }
  155.     function owner(id) {
  156.         unsafeWindow.DoMessage(id, '/M', '');    
  157.     }
  158.     function unban(id) {
  159.        unsafeWindow.DoMessage(id, "/u", '');
  160.     }
  161.  
  162.     //////////////////////
  163.     //RESPONSE FUCNTIONS//
  164.     //////////////////////
  165.      
  166.     //Responds to whereever the message came from
  167.     //in PC/PM(mobile doesn't differentiate) responds via PC
  168.     //from main respond to main
  169.     function respond(message) {
  170.         if(lastTab==0) {
  171.             sendMessage(message);    
  172.         } else {
  173.             sendPC(message,lastTab);
  174.         }
  175.     }
  176.        
  177.     //Simply sends a message to main chat
  178.     function sendMessage(message) {
  179.         xmlHttp2 = unsafeWindow.getHTTPObject();
  180.         xmlHttp2.open('GET','/Post?m='+message,true);
  181.         xmlHttp2.setRequestHeader("Content-Type", "text/plain");
  182.         xmlHttp2.setRequestHeader("Connection", "close");
  183.         xmlHttp2.send(null);  
  184.     }
  185.     //Sends a message out to PC
  186.     function sendPC(message,id) {
  187.         xmlHttp2 = unsafeWindow.getHTTPObject();
  188.         xmlHttp2.open('GET','/Post?u='+id+'&t='+message,true);
  189.         xmlHttp2.setRequestHeader("Content-Type", "text/plain");
  190.         xmlHttp2.setRequestHeader("Connection", "close");
  191.         xmlHttp2.send(null);      
  192.     }
  193.     function dice(id)
  194.     {
  195.             var randomNumber = Math.floor( Math.random() * 6 ) + 1;
  196.             if( randomNumber == 1 ) sendMessage( "[" + id + "] 1." );
  197.             else if( randomNumber == 2 ) sendMessage( "[" + id + "] 2." );
  198.             else if( randomNumber == 3 ) sendMessage( "[" + id + "] 3." );
  199.             else if( randomNumber == 4 ) sendMessage( "[" + id + "] 4." );
  200.             else if( randomNumber == 5 ) sendMessage( "[" + id + "] 5." );
  201.             else if( randomNumber == 6 ) sendMessage( "[" + id + "] 6." )
  202.     }
  203.  
  204.     function crypto( arg, alg ) //encryption..
  205. {
  206.     setTimeout( function() // unsafeWindow cannot call GM_cryptoHash()
  207.     {
  208.         var hashed = GM_cryptoHash( arg, alg );
  209.         if( alg == "SHA512" ) setTimeout( function() { sendMessage( hashed ); }, 1750 );
  210.         else if( alg == "SHA384" || alg == "SHA256" ) setTimeout( function() { sendMessage( hashed ); }, 1500 );
  211.         else setTimeout( function() { sendMessage( hashed ); }, 1000 );
  212.     }, 1);
  213. }
  214.  
  215. function datetime()         //date & time
  216. {
  217.     var currentDate = new Date()            //reset date
  218.     var day = currentDate.getDate()         //dd
  219.     var month = currentDate.getMonth() + 1  //mm
  220.     var year = currentDate.getFullYear()    //yyyy
  221.     var hr = currentDate.getHours()         //hh
  222.     var min = currentDate.getMinutes()      //mm
  223.     var sec = currentDate.getSeconds()      //ss
  224.     sendMessage( "Date: " + day + "/" + month + "/" + year + " Time: " + hr + "h:" + min + "m:" + sec + "s" );
  225. }
  226.  
  227. function Reb00t() {
  228. sendMessage("Rebooting H0rnetBot1337..");
  229. setTimeout(function() {
  230. history.go(-1)
  231. },2000);
  232. }
  233.  
  234. function autoWelcome() {
  235. sendMessage("H0rnetBot1337 is now connected!");
  236. }
  237.  
  238.             function insult( argu ) //I should of used var insult= [...] but I'm too lazy, by H0rnet, for some annoying people.
  239.         {
  240.                 var randomNumber = Math.floor( Math.random() * 32 ) + 1;
  241.                 if( randomNumber == 1 ) sendMessage( argu + ", get the fuck out of this chatroom, faggot." );
  242.                 else if( randomNumber == 2 ) sendMessage( argu + ", would you please shut the fucking fuck up?" );
  243.                 else if( randomNumber == 3 ) sendMessage( argu + ", you are a retard." );
  244.                 else if( randomNumber == 4 ) sendMessage( argu + ", you are the worste skid I have ever seen." );
  245.                 else if( randomNumber == 5 ) sendMessage( argu + ", you are pathetic" );
  246.                 else if( randomNumber == 6 ) sendMessage( argu + ", since you have joined this room, our IQ have lowered by 3, I hope you are proud, and may God have mercy on you." );
  247.                 else if( randomNumber == 7 ) sendMessage( argu + ", even if you were twice as smart, you would still be stupid." );
  248.                 else if( randomNumber == 8 ) sendMessage( argu + ", fuck off." );
  249.                 else if( randomNumber == 9 ) sendMessage( argu + ", you are unwanted in this chat, please leave by clicking sign out." );
  250.                 else if( randomNumber == 11 ) sendMessage( argu + ", I would slap you, but that would be animal abuse." );
  251.                 else if( randomNumber == 12 ) sendMessage( argu + ", shock me, say something intelligent. " );
  252.                 else if( randomNumber == 13 ) sendMessage( argu + ", you are so fat that you download cheats for Wii Fit." );
  253.                 else if( randomNumber == 14 ) sendMessage( argu + ", you are the reason God created the middle finger." );
  254.                 else if( randomNumber == 15 ) sendMessage( argu + ", you are a cunt" );
  255.                 else if( randomNumber == 16 ) sendMessage( argu + ", yo momma is so poor, I saw her chasing the garbage truck with a shopping list." );
  256.                 else if( randomNumber == 17 ) sendMessage( argu + ", you are like a light switch, even a little kid can turn you on." );
  257.                 else if( randomNumber == 18 ) sendMessage( argu + ", you are a noob" );
  258.                 else if( randomNumber == 19 ) sendMessage( argu + ", insert insult here (redface)" );
  259.                 else if( randomNumber == 20 ) sendMessage( argu + ", nobody loves you" );
  260.                 else if( randomNumber == 21 ) sendMessage( argu + ", I could compare you to shit, but that would be an insult for the word shit." );
  261.                 else if( randomNumber == 22 ) sendMessage( argu + ", you are as smart as a plank" );
  262.                 else if( randomNumber == 23 ) sendMessage( argu + ", I hope a airplane crashes on you while you sleep." );
  263.                 else if( randomNumber == 24 ) sendMessage( argu + ", error is the only word I can use to define how nowhere you are." );
  264.                 else if( randomNumber == 25 ) sendMessage( argu + ", gtfo (d)" );
  265.                 else if( randomNumber == 26 ) sendMessage( argu + ", you are not cool :( " );
  266.                 else if( randomNumber == 27 ) sendMessage( argu + ", you are not smart." );
  267.                 else if( randomNumber == 28 ) sendMessage( argu + ", stfu please" );
  268.                 else if( randomNumber == 29 ) sendMessage( argu + ", you are a tool" );
  269.                 else if( randomNumber == 30 ) sendMessage( argu + ", I wish cancer on you and all your family." );
  270.                 else if( randomNumber == 31 ) sendMessage( argu + ", out of over 1,000,000 sperm, you were the fastest?" );
  271.                 else if( randomNumber == 32 ) sendMessage( argu + ", I would ask how old you are, but I know you cant count that high." );      
  272.         }
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279. CREDITS: 3nvisi0n and H0rnet
Advertisement
Add Comment
Please, Sign In to add comment