import os from dotenv import load_dotenv # Import OS variables from Dotenv file. load_dotenv() # Load Dotenv. Delete this for production import discord # Main Lib from discord.ext import commands # Commands module from discord_slash import SlashCommand, SlashContext, cog_ext, utils # Slash Command Library from discord_slash.utils.manage_commands import create_choice, create_option # Slash Command features from dev import guild_ids, unloadAllCogs, loadAllCogs, reloadAllCogs ##### Debug Cog class Debug(commands.Cog): def __init__(self, client): self.client = client @cog_ext.cog_slash( name='reload', description='Reloads all cogs', guild_ids=guild_ids ) async def _reload(self, ctx:SlashContext): reloadAllCogs() await ctx.send('Reloading Cogs.') @cog_ext.cog_slash( name='deleteAll', description='Deletes all Slash Commands', guild_ids=guild_ids ) async def _deleteAll(self, ctx:SlashContext): await utils.manage_commands.remove_all_commands( bot_id=self.client.user.id, bot_token=os.getenv('TEST_3_TOKEN'), guild_ids=None ) await utils.manage_commands.remove_all_commands( bot_id=self.client.user.id, bot_token=os.getenv('TEST_3_TOKEN'), guild_ids=guild_ids ) await ctx.send('Deleted all commands.') @commands.command( name='reloadAll' ) async def _reloadAll(self, ctx): await ctx.send('Reloading all cogs.') reloadAllCogs() def setup(client): client.add_cog(Debug(client))