This repository has been archived by the owner on Dec 3, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 3
认识 EasyAPIModule
WetABQ edited this page Mar 18, 2020
·
6 revisions
EasyAPI 插件是由一个个模块组成的, 你可以将 EasyAPI 模块理解为 “插件中的插件”
如果你想简易的创建一个 EasyAPI 模块, 只需要创建一个新类, 并让其继承于 SimpleEasyAPIModule
下即可
注: 本篇仅做基础教学, 模块的创建方式多种多样, 受限于篇幅于本人时间, 仅举其中较为简单的一个作为示范
如果您需要全面深入的了解 EasyAPI, 推荐您直接阅读源代码即可.
我们在主类中添加一个 INSTANCE, 使插件主类做单例模式运行. (只被实例化一次)
package easyapi.demo;
import cn.nukkit.plugin.PluginBase;
public class EasyAPIDemo extends PluginBase {
public static EasyAPIDemo INSTANCE;
@Override
public void onEnable() {
INSTANCE = this;
}
@Override
public void onDisable() {
}
}
新建一个 EasyAPIDemoModule
类, 继承于 SimpleEasyAPIModule
package easyapi.demo;
import org.jetbrains.annotations.NotNull;
import top.wetabq.easyapi.module.ModuleInfo;
import top.wetabq.easyapi.module.ModuleVersion;
import top.wetabq.easyapi.module.SimpleEasyAPIModule;
public class EasyAPIDemoModule extends SimpleEasyAPIModule {
@NotNull
public ModuleInfo getModuleInfo() {
return new ModuleInfo(
EasyAPIDemo.INSTANCE,
"EasyAPIDemoModule",
"WetABQ",
new ModuleVersion(1, 0, 0)
);
}
public void moduleRegister() {
}
public void moduleDisable() {
}
}
你可以看到 getModuleInfo()
需要让我们填写模块的基本信息
- 模块属于哪个插件
- 模块名称
- 模块作者
- 模块版本
这便是我们的第一个模块, 为了让它生效, 就需要到 EasyAPIModuleManager
模块管理进行注册
EasyAPIModuleManager.INSTANCE.register(new EasyAPIDemoModule());
这便完成了模块的注册.
相信你也看到了上面的 moduleRegister()
方法, 意思就是, 当模块开始注册时, 调用改方法, moduleDisable()
同理
可是创建了模块又有什么用呢?
- Home
- Installation 安装
-
你的第一个 EasyAPI 插件
- 创建一个 EasyAPI 插件
- 认识 EasyAPIModule
- 使用基础 API 接口
- 打包发布你基于 EasyAPI 的插件