This commit is contained in:
deathbybandaid 2019-05-24 09:20:57 -04:00
parent 79262479a9
commit b2066c2c93

View File

@ -23,11 +23,7 @@ class BotPrerun():
def prerun(self, trigger_command_type='module'):
def actual_decorator(function):
@functools.wraps(function)
def internal_prerun(bot, trigger, *args, **kwargs):
# Bots can't run commands
if Identifier(trigger.nick) == bot.nick:
return
def prerun_gen(bot, trigger, *args, **kwargs):
# Primary command used for trigger, and a list of all words
trigger_args, trigger_command = self.trigger_args(trigger.args[1], trigger_command_type)
@ -45,22 +41,23 @@ class BotPrerun():
# Create dict listings for trigger.sb
argsdict_list = self.trigger_argsdict_list(argsdict_default, and_split)
return argsdict_list
# Run the function for all splits
for argsdict in argsdict_list:
argsdictlist = prerun_gen
# Run the function for all splits
for argsdict in argsdictlist:
@functools.wraps(function)
def internal_prerun(bot, trigger, *args, **kwargs):
trigger.sb = copy.deepcopy(argsdict)
trigger.sb["args"], trigger.sb["hyphen_arg"] = self.trigger_hyphen_args(trigger.sb["args"])
def newfunc(bot, trigger, *args, **kwargs):
if not trigger.sb["hyphen_arg"]:
# check if anything prohibits the nick from running the command
if self.trigger_runstatus(bot, trigger):
function(bot, trigger, *args, **kwargs)
else:
self.trigger_hyphen_arg_handler(bot, trigger)
functools.partial(newfunc)(bot, trigger, *args, **kwargs)
return internal_prerun
if not trigger.sb["hyphen_arg"]:
# check if anything prohibits the nick from running the command
if self.trigger_runstatus(bot, trigger):
function(bot, trigger, *args, **kwargs)
else:
self.trigger_hyphen_arg_handler(bot, trigger)
internal_prerun
return actual_decorator
def trigger_args(self, triggerargs_one, trigger_command_type='module'):
@ -158,6 +155,10 @@ class BotPrerun():
def trigger_runstatus(self, bot, trigger):
# Bots can't run commands
if Identifier(trigger.nick) == bot.nick:
return False
# don't run commands that are disabled in channels
if not trigger.is_privmsg:
disabled_list = spicedb.get_channel_value(bot, trigger.sender, 'disabled_commands', 'commands') or {}