import { cfg, read } from './inc/cfg.js'; import { wrapper, clients } from './inc/wrapper.js'; const safeEval = require('safe-eval'); read().then(() => { let bot = new wrapper(); bot.on('message', e => { // Todo: eventhandler let orig = e.message; let tmp = orig.split(" "); let cmd = tmp[0].toLowerCase(); tmp.shift(); let args = tmp; args[0] = (args[0] == String.empty || typeof args[0] === 'undefined' || args[0] == "") ? e.user.nick : args[0]; if (e.message.match(/^\.js /)) { // JS-Sandbox args = e.message.substring(3); var context = { e: e, gf: "nogf" } try { var output = safeEval(args, context); if (typeof output !== undefined && output !== 'undefined' && output) { let blah = JSON.stringify(output); if (blah != "Converting circular structure to JSON") e.reply(blah.length > 220 ? `holy fuck, Ausgabe wäre viel zu lang! (${blah.length} Zeichen :DDDDDD)` : blah); } } catch (err) { e.reply(err.message); } } else if (e.message.match(/^\.kaffee/)) { var Texte = [ `serviert ${args.join(" ")} einen frisch gebrühten Kaffee aus aromatisch hochwertigen und laktosefreien Kaffeebohnen, die nach dem Vorbild der kolonisierten Ausbeutung herangewachsen und importiert worden sind`, `serviert ${args.join(" ")} einen frisch gebrühten Kaffee aus aromatisch minderwertigen Kaffeebohnen, die zu einem überhöhten Preis und nach dem Prinzip des Fairtrade® herangewachsen und importiert worden sind` ]; e.replyAction(`${Texte[~~((Math.random() * Texte.length))]}; Prost!`); } else if (e.message.match(/^\.abschieben/)) { let Dest = [ "nach Syrien", "in die Ukraine", "nach Timbuktu", "nach Uruguay", "nach Llanfairpwllgwyngyllgogerychwyrndrobwllllantysiliogogogoch", "nach Bagdad", "nach Nordkorea", "nach Kurdistan", "nach Bayern", "nach Japan", "nach Irak", "in den Iran", "nach Saudi-Arabien", "nach Libyen", "nach Niger", "nach Uganda", "nach Afghanistan" ]; e.replyAction(`schiebt ${args[0]} ${Dest[~~(Math.random() * Dest.length)]} ab.`); } else if (e.message.match(/^\.butterkäse/)) { e.replyAction(`drischt mit einem großen Stück Butterkäse auf ${args[0]} ein.`); } }); bot.on('ctcp:version', e => { e.write(`notice ${e.user.nick} :\u0001VERSION Pimmel 2.1\u0001`) }); });