diff options
author | 2021-02-18 19:43:26 +0000 | |
---|---|---|
committer | 2021-02-18 19:43:26 +0000 | |
commit | 032d4ae8300ed4570e0b471dd49f628f446cb1fa (patch) | |
tree | 2df2a45552018923159cf20509c7f4ceddc40d33 /bot/command.py | |
parent | Log what func is being ran in the executor. (diff) |
Add root alias support for commands
Diffstat (limited to 'bot/command.py')
-rw-r--r-- | bot/command.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/bot/command.py b/bot/command.py new file mode 100644 index 00000000..0fb900f7 --- /dev/null +++ b/bot/command.py @@ -0,0 +1,18 @@ +from discord.ext import commands + + +class Command(commands.Command): + """ + A `discord.ext.commands.Command` subclass which supports root aliases. + + A `root_aliases` keyword argument is added, which is a sequence of alias names that will act as + top-level commands rather than being aliases of the command's group. It's stored as an attribute + also named `root_aliases`. + """ + + def __init__(self, *args, **kwargs): + super().__init__(*args, **kwargs) + self.root_aliases = kwargs.get("root_aliases", []) + + if not isinstance(self.root_aliases, (list, tuple)): + raise TypeError("Root aliases of a command must be a list or a tuple of strings.") |