Remove help command. Doesn't work with slash commands.
This commit is contained in:
@@ -1,26 +0,0 @@
|
||||
"""
|
||||
Help command
|
||||
"""
|
||||
|
||||
from nextcord.ext import commands
|
||||
|
||||
from .help_command import NewHelpCommand
|
||||
|
||||
|
||||
class HelpCog(commands.Cog):
|
||||
"""Help Command"""
|
||||
|
||||
def __init__(self, bot: commands.Bot):
|
||||
self.bot = bot
|
||||
self._original_help_command = bot.help_command
|
||||
bot.help_command = NewHelpCommand()
|
||||
bot.help_command.cog = self
|
||||
|
||||
def cog_unload(self):
|
||||
self.bot.help_command = self._original_help_command
|
||||
|
||||
|
||||
# setup functions for bot
|
||||
def setup(bot: commands.Bot):
|
||||
"""Adds function to bot"""
|
||||
bot.add_cog(HelpCog(bot))
|
||||
@@ -1,84 +0,0 @@
|
||||
"""
|
||||
Help command. Copied from discord-bot-template.
|
||||
"""
|
||||
|
||||
import nextcord
|
||||
from nextcord.embeds import EmptyEmbed
|
||||
from nextcord.ext import commands
|
||||
import config # pylint: disable=import-error
|
||||
|
||||
|
||||
class NewHelpCommand(commands.MinimalHelpCommand):
|
||||
"""Custom help command override using embeds"""
|
||||
|
||||
COLOUR = nextcord.Colour.blurple()
|
||||
|
||||
def get_ending_note(self):
|
||||
"""Returns note to display at the bottom"""
|
||||
invoked_with = self.invoked_with
|
||||
return f"Use {config.BOT_PREFIX}{invoked_with} [command] for more info on a command."
|
||||
|
||||
def get_command_signature(self, command: commands.core.Command):
|
||||
"""Retrieves the signature portion of the help page."""
|
||||
return f"{command.qualified_name} {command.signature}"
|
||||
|
||||
async def send_bot_help(self, mapping: dict):
|
||||
"""implements bot command help page"""
|
||||
embed = nextcord.Embed(title="Bot Commands", colour=self.COLOUR)
|
||||
avatar = self.context.bot.user.avatar
|
||||
avatar_url = avatar.url if avatar else EmptyEmbed
|
||||
embed.set_author(name=self.context.bot.user.name, icon_url=avatar_url)
|
||||
description = self.context.bot.description
|
||||
if description:
|
||||
embed.description = description
|
||||
|
||||
for cog, commands in mapping.items(): # pylint: disable=redefined-outer-name
|
||||
name = "No Category" if cog is None else cog.qualified_name
|
||||
filtered = await self.filter_commands(commands, sort=True)
|
||||
if filtered:
|
||||
# \u2002 = middle dot
|
||||
value = "\u2002".join(f"{config.BOT_PREFIX}{c.name}" for c in filtered)
|
||||
if cog and cog.description:
|
||||
value = f"{cog.description}\n{value}"
|
||||
embed.add_field(name=name, value=value)
|
||||
|
||||
embed.set_footer(text=self.get_ending_note())
|
||||
await self.get_destination().send(embed=embed)
|
||||
|
||||
async def send_cog_help(self, cog: commands.Cog):
|
||||
"""implements cog help page"""
|
||||
embed = nextcord.Embed(title=f"{cog.qualified_name} Commands", colour=self.COLOUR)
|
||||
if cog.description:
|
||||
embed.description = cog.description
|
||||
|
||||
filtered = await self.filter_commands(cog.get_commands(), sort=True)
|
||||
for command in filtered:
|
||||
embed.add_field(
|
||||
name=self.get_command_signature(command),
|
||||
value=command.short_doc or "...",
|
||||
inline=False,
|
||||
)
|
||||
|
||||
embed.set_footer(text=self.get_ending_note())
|
||||
await self.get_destination().send(embed=embed)
|
||||
|
||||
async def send_group_help(self, group: commands.Group):
|
||||
"""implements group help page and command help page"""
|
||||
embed = nextcord.Embed(title=group.qualified_name, colour=self.COLOUR)
|
||||
if group.help:
|
||||
embed.description = group.help
|
||||
|
||||
if isinstance(group, commands.Group):
|
||||
filtered = await self.filter_commands(group.commands, sort=True)
|
||||
for command in filtered:
|
||||
embed.add_field(
|
||||
name=self.get_command_signature(command),
|
||||
value=command.short_doc or "...",
|
||||
inline=False,
|
||||
)
|
||||
|
||||
embed.set_footer(text=self.get_ending_note())
|
||||
await self.get_destination().send(embed=embed)
|
||||
|
||||
# Use the same function as group help for command help
|
||||
send_command_help = send_group_help # type: ignore
|
||||
Reference in New Issue
Block a user