diff options
author | 2021-09-05 00:12:47 -0400 | |
---|---|---|
committer | 2021-09-05 00:12:47 -0400 | |
commit | 66c888ad68ad88ba1d39c2ac4824469560b8c29a (patch) | |
tree | 706917000c39c3af1fc92c47fd59fe31a63f601a /bot/exts/evergreen/timed.py | |
parent | Move internal eval and rename utils to core (diff) |
Move practical functions into utilities folder
Separates out the useful/practical seasonal bot features from the
evergreen folder into a "utilities" folder.
Adjusts the paths to resources to reflect the folder move.
Diffstat (limited to 'bot/exts/evergreen/timed.py')
-rw-r--r-- | bot/exts/evergreen/timed.py | 48 |
1 files changed, 0 insertions, 48 deletions
diff --git a/bot/exts/evergreen/timed.py b/bot/exts/evergreen/timed.py deleted file mode 100644 index 2ea6b419..00000000 --- a/bot/exts/evergreen/timed.py +++ /dev/null @@ -1,48 +0,0 @@ -from copy import copy -from time import perf_counter - -from discord import Message -from discord.ext import commands - -from bot.bot import Bot - - -class TimedCommands(commands.Cog): - """Time the command execution of a command.""" - - @staticmethod - async def create_execution_context(ctx: commands.Context, command: str) -> commands.Context: - """Get a new execution context for a command.""" - msg: Message = copy(ctx.message) - msg.content = f"{ctx.prefix}{command}" - - return await ctx.bot.get_context(msg) - - @commands.command(name="timed", aliases=("time", "t")) - async def timed(self, ctx: commands.Context, *, command: str) -> None: - """Time the command execution of a command.""" - new_ctx = await self.create_execution_context(ctx, command) - - ctx.subcontext = new_ctx - - if not ctx.subcontext.command: - help_command = f"{ctx.prefix}help" - error = f"The command you are trying to time doesn't exist. Use `{help_command}` for a list of commands." - - await ctx.send(error) - return - - if new_ctx.command.qualified_name == "timed": - await ctx.send("You are not allowed to time the execution of the `timed` command.") - return - - t_start = perf_counter() - await new_ctx.command.invoke(new_ctx) - t_end = perf_counter() - - await ctx.send(f"Command execution for `{new_ctx.command}` finished in {(t_end - t_start):.4f} seconds.") - - -def setup(bot: Bot) -> None: - """Load the Timed cog.""" - bot.add_cog(TimedCommands()) |