如何在 discord.py cogs 中创建别名?

我已经设置了一个 discord.py cog,可以使用了。有一个问题,如何为命令设置别名?我会在下面给你我的代码,看看我还需要做什么:


# Imports

from discord.ext import commands

import bot  # My own custom module



# Client commands

class Member(commands.Cog):

    def __init__(self, client):

        self.client = client


    # Events

    @commands.Cog.listener()

    async def on_ready(self):

        print(bot.online)


    # Commands

    @commands.command()

    async def ping(self, ctx):

        pass



# Setup function

def setup(client):

    client.add_cog(Member(client))

ping这样的话,我应该如何为下面的命令设置别名呢?@commands.command()


慕的地6264312
浏览 89回答 1
1回答

开心每一天1111

discord.ext.commands.Command对象具有aliases属性。下面是如何使用它:@commands.command(aliases=['testcommand', 'testing'])async def test(self, ctx):    await ctx.send("This a test command")然后,您将能够通过编写!test,!testcommand或!testing(如果您的命令前缀是!)来调用您的命令。此外,如果您计划对日志系统进行编码,Context则对象具有一个invoked_with属性,该属性采用调用命令时使用的别名作为值。编辑:如果你只想让你的 cog 管理员,你可以覆盖现有的cog_check函数,该函数将在调用来自该 cog 的命令时触发:from discord.ext import commandsfrom discord.utils import getclass Admin(commands.Cog):    def __init__(self, bot):        self.bot = bot    async def check_cog(self, ctx):        admin = get(ctx.guild.roles, name="Admin")        #False -> Won't trigger the command        return admin in ctx.author.role
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python