You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

24 lines
812 B

from oyoyo.parse import parse_nick
import botconfig
def generate(fdict):
"""Generates a decorator generator. Always use this"""
def cmd(*s, raw_nick=False, admin_only=False):
def dec(f):
def innerf(*args):
largs = list(args)
if not raw_nick and largs[1]: largs[1] = parse_nick(largs[1])[0]
if admin_only:
if largs[1] and largs[1] in botconfig.ADMINS:
return f(*largs)
else:
largs[0].notice(largs[1], "You are not an admin.")
return
return f(*largs)
for x in s:
fdict[x] = innerf
return f
return dec
return cmd