Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Dependencies
- var irc = require('irc');
- var fs = require('fs');
- var readline = require('readline');
- var stream = require('stream');
- //IRC Client
- var client = new irc.Client('irc.freenode.org', 'ATaHaCkA', {
- channels: ['#KMB'],
- autoRejoin: true,
- autoConnect: true,
- name: "PorBot",
- realName: "Fani Mazakura"
- });
- //Path for new words
- var path = 'new-phrases.txt';
- var suffixes = [
- " KOR!!111!",
- " KMB WEEE",
- " SHTE SCHUPQ WE111!",
- " DOKAD",
- " UMRI WE MAZEN POR",
- " NE MI GOWORI TAKA WE",
- " EI TURSKI PAPAGAL",
- " SHTA SMACHKAM",
- " PORQ GI KAT PILITA",
- " EI SQ TI EAH MAMETO",
- " WE111!!!",
- " DOKLAAAAAAD",
- " IZGOROI NA KLADA WE",
- " SERIETZ 111!!!!",
- " CELIQ SI W LAINA WE",
- " !11111!!",
- " KOR KOR KOR",
- " NE E BIBLEISKO KAKWOTO PISHESH"
- ];
- var duhanki = [
- "DUHASH LI MI SA WE!!!!!",
- "SHTA DOKLADWAM NA PORA DA ZNAESH",
- "NAPRAIH TI CHERNA MAGIQ HAHAHAHAHA",
- "OMRI WE",
- "ISKASH LI DA SE BIEM, A",
- "ZNAM TE KADE JIVEESH",
- "ASL PLZ",
- "16 f VN",
- "NE MI SE OBQSNQWAI WE SMESHNIK",
- "DUHAI NA BEREKOW WE",
- "SPRQ LI DA SE DUHASH WE",
- "SHTE O4ERNQ CELIQ",
- "OT KOI OTBOR SI",
- "DAI MI MALKO INFO",
- "NAUCHI SE DAPISHESH",
- "SHTE MI USLUJISH LI S LEFCHE",
- "POZNAWASH LI MACKI DETO PUSKAT"
- ];
- var zakani = [
- " AKO PRODULJI DA ME ZANIMAWA SHTE GO SCHUPQ",
- " E MNOGO PROST WE",
- " SPRI DA ME ZANIMAWASH WE",
- " SPRI S TEQ CHEKII WE",
- " CHERPI CIGARA WE BATE",
- " E SERIETZ",
- " DOHA NA PORA",
- " GO DOKLADWAH MUHAHAAH",
- " AE TE BANNA OTUKA, A",
- " MAI SI PROSISH BAN"
- ];
- var gradove = [
- "VN",
- "SF",
- "STZ",
- "BS",
- "SIMITLI",
- "ZLATNA PANEGA",
- "PORNOLANDIQ",
- "SILISTRA",
- "KZ",
- "YAMBOL"
- ];
- var asl = [
- "ISKASH LI SNIMKI",
- "PRATI MI SNIMKI PLZ",
- "KLET BALGARIN LI SI",
- "POZNAWASH LI MAZEN POR",
- "IZGLEJDASH MALKO SMOTAN",
- "MNOGO SI SRAMEJLIW"
- ];
- var zaKanala = [
- "IMA LI NQKOI ONLINE WE?",
- "AIDE DA IGRAEM HORO",
- "PIE LI WI SE RAKIQ",
- "MNOGO ME MYRZI",
- "AHMED DOGAN E KOR",
- "MAZEN POR KWO STANA WE",
- "KOI MI SE DUHA, A",
- "NQKOI SHTE HODI LI SKORO KUM SIMITLI",
- "W SIMITLI OBICHAM DIWITE KOZI",
- "AE TUKA SHTO NQMA PUTKI W TOZ KANAL WE",
- "KLETNICIIIIIIII",
- "EBAHTI TAPACITE BARTMI",
- "NQKOI MAI ISKA BAN, A",
- "AIDE DA SI GOVORIM ZA KURVI",
- "KOI E PIL SLIVENSKA GROZDOWA DNESKA",
- "TUKA E EBAHTI MARTWILOTO",
- "TOW NE E PRAWOSLAWNO"
- ];
- var helloPhrases = [
- "ZDRASTI {nick} PISHI MI NA LICHNO",
- "ABE TOQ {nick} NE BESHE LI GOLQM GROZNIK??"
- ]
- var atanaskaPhrases = [
- "Zdrasti {nick} iskash li me ebesh, AAAAA?",
- "Zdrasti {nick} MNOGO SI SLADAK",
- "EI {nick} MN SI GROZEN ZA MEN",
- "EI PALAWNIKO {nick}",
- "ZDRASTI {nick} ASL PLZ"
- ]
- var throttles = {
- };
- function randomPhrase(_array){
- if(_array.length){
- return _array[ Math.ceil(Math.random() * (_array.length-1)) ];
- } else {
- return "";
- }
- }
- function randomInt(min, max) {
- return Math.floor(Math.random() * (max - min + 1)) + min;
- }
- function addTask(message, taskname, task){
- if( message.toLowerCase().indexOf(taskname) != -1 ){
- if(task){
- task();
- }
- }
- }
- function throttleResponse(to){
- if(!throttles[to]){
- throttles[to] = {};
- }
- }
- //PM
- client.addListener('pm', function (from, message) {
- var newMessage = message.toUpperCase();
- console.log("from " + from + " -> " + newMessage);
- addToWordList(message);
- var hasTask = false;
- client.say("NickServ", "SET ACCOUNTNAME " + "aTaHaCkA^C^" + from );
- if(Math.random() < 0.2){
- addToWordList(message);
- }
- //ASL
- addTask(message, "asl", function(){
- hasTask = true;
- var gender = Math.random() >= 0.5 ? "m" : "f";
- var years = randomInt(14, 30);
- var city = randomPhrase(gradove);
- client.say(from, years + " " + gender + " " + city);
- client.say(from, randomPhrase(asl));
- });
- addTask(message, "prevedi", function(){
- hasTask = true;
- var translated = message.toLowerCase().replace("prevedi", "").toUpperCase();
- client.say(from, translated);
- });
- addTask(message, "kmb", function(){
- client.say(from, "NE MI GOVORI ZA TEQ CIGANI OT KMB!!!!!! DOKLAD");
- });
- addTask(message, "zdr", function(){
- client.say("from", "ZDR I NA TEP");
- });
- if(!hasTask){
- //client.say(from, newMessage + randomPhrase(suffixes));
- setTimeout(function(){
- client.say(from, randomPhrase(atanaskaPhrases).replace("nick", from) );
- }, parseInt(Math.random()* 10) * 1000);
- /*if(Math.random() < 0.4){
- client.say(from, getPhraseFromWordList());
- }
- setTimeout(function(){
- client.say(from, randomPhrase(duhanki));
- }, parseInt(Math.random()* 100) * 1000);
- setTimeout(function(){
- var rand = Math.random();
- if(rand <= 0.3){
- client.say('#KMB', from + randomPhrase(zakani));
- }
- }, parseInt(Math.random()* 120) * 1000);
- */
- }//end !hasTask
- });
- //Message from KMB
- client.addListener('message#KMB', function (from, message) {
- console.log(from + ' => #KMB: ' + message);
- client.say("#KMB", "EI MAIMUNIIIIII EI SQ WA DOKLADWAH");
- });
- client.addListener("join", function(channel, nick, message){
- var helloMessage = randomPhrase(helloPhrases).replace("{nick}", nick);
- client.say(channel, helloMessage)
- //client.say(channel, nick + String(" DOBRE DOSHAL W KLETIQ BALGARSKI CHAT PISHI KOR I SI VARI").toUpperCase() );
- //client.send("MODE", channel, "+o", nick);
- });
- client.addListener("part", function(channel, nick, reason, message){
- //client.say(channel, String(nick + " NE BE6E NIKAKUW PATREOT!!11111").toUpperCase() );
- });
- //When I get into
- client.addListener("registered", function(){
- console.log("LOGGED INTO IRC");
- setInterval(function(){
- client.say("#KMB", randomPhrase(zaKanala));
- }, randomInt(1200, 10000) * 1000);
- });
- //Error
- client.addListener('error', function(message) {
- console.log('error: ', message);
- });
- /* = Phrase list
- -----------------------------------------------------------------------------*/
- function addToWordList(message){
- var buffer = new Buffer( String(message) + "\n");
- fs.open(path, 'a', function(err, fd) {
- if (err) {
- throw 'error opening file: ' + err;
- } else {
- fs.write(fd, buffer, 0, buffer.length, null, function(err) {
- if (err) throw 'error writing file: ' + err;
- fs.close(fd, function() {
- console.log('new phrase written');
- })
- });
- }
- });
- }
- function getPhraseFromWordList(){
- var instream = fs.createReadStream(path);
- var outstream = new stream;
- var rl = readline.createInterface(instream, outstream);
- var lines = [];
- var phrase = "";
- rl.on('line', function(line) {
- lines.push(line);
- });
- rl.on('close', function() {
- phrase = randomPhrase(lines);
- lines.length = 0;
- });
- console.log("[Random Fraza] -> " + phrase);
- return phrase;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement