[commands] Add when_mentioned_or helper to have mentions and prefixes.

This commit is contained in:
Rapptz 2016-03-05 20:10:11 -05:00
parent b10432d393
commit 4a1313f00c
2 changed files with 22 additions and 1 deletions

View File

@ -10,7 +10,7 @@ An extension module to facilitate creation of bot commands.
:license: MIT, see LICENSE for more details.
"""
from .bot import Bot, when_mentioned
from .bot import Bot, when_mentioned, when_mentioned_or
from .context import Context
from .core import *
from .errors import *

View File

@ -51,6 +51,27 @@ def when_mentioned(bot, msg):
to being mentioned, e.g. ``@bot ``."""
return '{0.user.mention} '.format(bot)
def when_mentioned_or(*prefixes):
"""A callable that implements when mentioned or other prefixes provided.
Examples
---------
.. code-block:: python
bot = commands.Bot(command_prefix=commands.when_mentioned_or('!'))
See Also
----------
:func:`when_mentioned`
"""
def inner(bot, msg):
r = list(prefixes)
r.append('{0.user.mention} '.format(bot))
return r
return inner
@asyncio.coroutine
def _default_help_command(ctx, *commands : str):
"""Shows this message."""