diff --git a/Fun/plugin.py b/Fun/plugin.py index 42cfe5b..3f38454 100644 --- a/Fun/plugin.py +++ b/Fun/plugin.py @@ -109,15 +109,28 @@ class Fun(callbacks.Plugin): irc.reply(data['insult']) insult = wrap(insult, [additional('nickInChannel')]) - def ascii(self, irc, msg, args, text): - """ + def ascii(self, irc, msg, args, optlist, text): + """[--font ] [--fontlist] [] text to ASCII art """ channel = msg.args[0] - data = requests.get("https://artii.herokuapp.com/make?text={0}&font=univers".format(text)) - for line in data.text.splitlines(): - if line.strip(): - irc.reply(line, prefixNick=False) - ascii = wrap(ascii, ['text']) + optlist = dict(optlist) + if text: + text = text.upper().strip() + if 'font' in optlist: + font = optlist.get('font') + data = requests.get("https://artii.herokuapp.com/make?text={0}&font={1}".format(text, font)) + for line in data.text.splitlines(): + if line.strip(): + irc.reply(line, prefixNick=False) + elif 'fontlist' in optlist: + fontlist = requests.get("https://artii.herokuapp.com/fonts_list") + irc.reply(fontlist.text.replace('\n', ', ')) + elif 'font' not in optlist: + data = requests.get("https://artii.herokuapp.com/make?text={0}&font=univers".format(text)) + for line in data.text.splitlines(): + if line.strip(): + irc.reply(line, prefixNick=False) + ascii = wrap(ascii, [getopts({'font':'something', 'fontlist':''}), additional('text')]) Class = Fun