itstautvydas/modular-discord-php

DiscordPHP 的扩展

v1.0.2 2023-08-20 09:57 UTC

This package is auto-updated.

Last update: 2024-09-20 23:14:04 UTC


README

Status License

这是一个为 DiscordPHP 制作的扩展,允许用户创建模块来控制监听器或命令,从而使代码更加有序。我以前曾经制作过类似的东西,但我只是想重写它,因为代码真的很糟糕。

我制作这个扩展是为了使制作机器人变得更加容易,所以我决定将其公开。

功能

  • 控制台/终端支持 - 能够通过控制台运行命令(并注册自己的命令)!目前不支持 Windows!不确定其他系统是否支持,我仅在 Windows 和 Linux 上进行了测试。
  • 模块 - 核心功能。它们也可以根据需要启用或禁用。
  • 监听器 - 将监听器放入单独的文件中,定义方法而不是调用它们。
  • 命令 - 容易注册和监听命令!命令只向 Discord 发送一次。
  • 访问器 - 这些所谓的 "访问器"(我想不出更好的名字了哈哈哈)是每个模块都可以访问的实例。如果你有一个对象实例,并且想在多个模块中访问它,这很有用。
  • 可重载的模块! - 你还可以完全重新加载一个模块,这意味着文件更改会被应用。这基本上是禁用当前模块,获取其代码,重命名类并重新加载它。遗憾的是,PHP 中没有其他卸载类的方法。这可能对测试很有用!注意:其他外部文件不会重新加载。

待办事项

  • 完成控制台命令

入门指南

安装

composer require itstautvydas/modular-discord-php

基本用法

你可以在 这里 查看完整的示例。

include 'vendor/autoload.php';

use Discord\Discord;
use ModularDiscord\ModularDiscord;

ModularDiscord::new()->loadAccessors()->loadModules()->initiateDiscord([
    'token' => '******'
    // Put your bot options here
], function (Discord $discord) {
    // Do something before running discord bot client...
})->run();

关于访问器和模块

访问器不需要有自己的文件夹,但如果它们有,主文件应该命名为 accessor.php,类名与文件夹名称相同。

其他模块的依赖性是可能的,但请注意模块是按字母顺序加载的。

运行

非常基本的命令

php bot.php