tuxbot-bot/tuxbot/cogs/Custom/functions/converters.py

25 lines
785 B
Python

from discord.ext import commands
from jishaku.models import copy_context_with
class AliasConvertor(commands.Converter):
async def convert(self, ctx, argument):
args = argument.split(" | ")
if len(args) <= 1:
raise commands.BadArgument(
"Alias must be like `[command] | [alias]`"
)
command_ctx = await copy_context_with(
ctx, content=ctx.prefix + args[0]
)
alias_ctx = await copy_context_with(ctx, content=ctx.prefix + args[1])
if command_ctx.command is None:
raise commands.BadArgument(f"Unknown command `{args[0]}`")
if alias_ctx.command is not None:
raise commands.BadArgument(f"Command `{args[1]}` already exists")
return argument