33 lines
921 B
Python
33 lines
921 B
Python
import markovuniverse,plugin,sys
|
|
|
|
SUBCMDS = dict()
|
|
USAGE = dict()
|
|
|
|
def reg_subcmd(name,format=""):
|
|
def _register(func):
|
|
SUBCMDS[name]=func
|
|
USAGE[name]=" ".join(filter(None,[name,format]))
|
|
return _register
|
|
|
|
@plugin.command("stevenuniverse","<subcmd> [args]")
|
|
def stevenuniverse(bot,channel,nick,subcmd=None,*args):
|
|
if not subcmd: subcmd = "help"
|
|
if subcmd not in SUBCMDS: subcmd = "help"
|
|
try:
|
|
SUBCMDS[subcmd](bot,channel,nick,*args)
|
|
except ValueError:
|
|
bot.say("Usage: !{} {}".format(bot.cmd,USAGE[subcmd]))
|
|
except:
|
|
print("!{} {} {}".format(bot.cmd,subcmd," ".join(args)))
|
|
raise
|
|
|
|
plugin.alias("su","stevenuniverse")
|
|
|
|
@reg_subcmd("help")
|
|
def help(bot,channel,nick,*a):
|
|
bot.say(channel,"{}: Current !{} subcommands are {}".format(nick,bot.cmd,", ".join(SUBCMDS.keys())))
|
|
|
|
@reg_subcmd("fake-leak")
|
|
def fakeleak(bot,channel,nick,*a):
|
|
bot.say(channel,nick+": {} - {}".format(*markovuniverse.new_episode()))
|