npm 包 discord.js-commando 使用教程

阅读时长 4 分钟读完

介绍

discord.js-commando 是一个建立在 Discord.js 之上的命令框架和库。它允许开发者轻松地编写模块化的、自定义的 Discord 机器人,并支持功能强大的命令管理器和自定义参数解析器。在本文中,我们将介绍如何在您的项目中使用 discord.js-commando。

安装

您可以通过以下命令使用 npm 安装 discord.js-commando:

请确保您的 npm 版本大于 6.0,否则请先更新 npm。

快速开始

在本节中,我们将快速介绍 discord.js-commando 的基础知识和如何设置机器人。创建一个新文件(例如 bot.js),然后添加以下代码:

-- -------------------- ---- -------
----- - -------------- - - -------------------------------
----- - ------- ----- - - -------------------------

----- ------ - --- ----------------
    -------------- -------
    ------ ----------------
    ------- -----------------------------
---

-------------------- -- -- -
    ------------------- -- -- ----------------------
---

--------------------

上面这段代码引入了 discord.js-commando 的 CommandoClient 类,然后通过从 config.json 文件中导入前缀和令牌的方式进行配置。接下来创建了一个新的 CommandoClient 实例,并设置机器人的前缀、所有者 ID 和邀请链接。然后监听 ready 事件,一旦机器人登录成功便会打印一个消息。

添加命令

现在,我们将添加一个命令来测试一下机器人是否工作。在 bot.js 文件中添加以下代码块:

-- -------------------- ---- -------
-------------------------------------- ---------
---------------------------------------
-------------------------------------------- - -------------

-------------------- ------- -- -
    -- ---------------- --- ---------------- -
        -----------------------
    -
---

上述代码将定义我们的第一个命令。首先,我们通过 registerGroup() 方法创建了一个名为“Basic”的命令组。然后,我们使用 registerDefaultTypes() 方法注册默认的参数类型。最后,我们使用 registerCommandsIn() 方法从 /commands 目录中注册了所有命令。

最后一行代码添加了一个监听器,用于响应“!ping”命令。如果我们在 Discord 服务器上发送“!ping”消息,机器人应该会回复“Pong!”。

定义命令

让我们现在来定义我们的第一个正式命令。在 /commands 目录下,新建一个名为 ping.js 的文件,并添加以下代码:

-- -------------------- ---- -------
----- - ------- - - -------------------------------

-------------- - ----- ----------- ------- ------- -
    ------------------- -
        ------------- -
            ----- -------
            ------ --------
            ----------- -------
            ------------ ----- --- --- -- ----- -- -- -- ---------
        ---
    -

    ------------ -
        ------ ---------------------
    -
--

上面的代码定义了一个名为“ping”的命令(与我们之前在监听器中使用的相同)。该命令属于“basic”组,并在 memberName 中手动定义了名称以确保正确性。description 属性是关于这个命令的简短描述。最后,我们定义了 run() 方法,它将回复 message 参数并发送“Pong!”消息。

高级用法

discord.js-commando 框架支持许多高级用法,例如参数解析器和自定义设置。您可以查阅文档以了解更多。

总结

现在,您已经知道如何使用 discord.js-commando,在机器人上添加新的命令并自定义设置。希望本文对您有所帮助,可以更快地构建自己的 Discord 机器人。在开始您的项目之前,请确保详细阅读官方文档和示例代码进行学习和指导。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/91176