From 0f62718ae0cfb51588fce71551edc4fa33a62ebb Mon Sep 17 00:00:00 2001 From: deathbybandaid Date: Thu, 23 May 2019 08:52:16 -0400 Subject: [PATCH] test new prerun class --- sopel_modules/SpiceBot/Prerun.py | 31 ++++++++++++++++++++++++++++++ sopel_modules/SpiceBot/__init__.py | 1 + 2 files changed, 32 insertions(+) create mode 100644 sopel_modules/SpiceBot/Prerun.py diff --git a/sopel_modules/SpiceBot/Prerun.py b/sopel_modules/SpiceBot/Prerun.py new file mode 100644 index 0000000..710419d --- /dev/null +++ b/sopel_modules/SpiceBot/Prerun.py @@ -0,0 +1,31 @@ +# coding=utf8 +from __future__ import unicode_literals, absolute_import, division, print_function +""" +This is the SpiceBot Prerun system. +""" + +import functools +import spicemanip + + +class BotPrerun(): + def __init__(self): + self.dict = {} + + def args(level, message=None, reply=False): + def actual_decorator(function): + @functools.wraps(function) + def argsbuilder(bot, trigger, *args, **kwargs): + triggerargs = spicemanip.main(trigger.args[1], 'create') + if triggerargs[0].lower() == bot.nick.lower(): + trigger.command = spicemanip.main(triggerargs, 2).lower() + trigger.arglist = spicemanip.main(triggerargs, '3+', 'list') + else: + trigger.command = spicemanip.main(triggerargs, 1).lower()[1:] + trigger.arglist = spicemanip.main(triggerargs, '2+', 'list') + return function(bot, trigger, *args, **kwargs) + return argsbuilder + return actual_decorator + + +prerun = BotPrerun() diff --git a/sopel_modules/SpiceBot/__init__.py b/sopel_modules/SpiceBot/__init__.py index 2606e87..f2496fc 100644 --- a/sopel_modules/SpiceBot/__init__.py +++ b/sopel_modules/SpiceBot/__init__.py @@ -12,6 +12,7 @@ from .Commands import * from .Events import * from .Channels import * from .Database import * +from .Prerun import * __author__ = 'Sam Zick' __email__ = 'sam@deathbybandaid.net'