ResourcePackManager API
ResourcePackManager 暴露了一个 Java API,允许其他插件在运行时注册其资源包以进行合并。
访问 API
API 类为 com.magmaguy.resourcepackmanager.api.ResourcePackManagerAPI。所有方法均为静态方法。
注册资源包
根据你的资源包是本地的、远程的还是两者兼有,提供了三种注册方法。
registerResourcePack
ResourcePackManagerAPI.registerResourcePack(
String pluginName,
String localPath,
String url,
boolean encrypts,
boolean distributes,
boolean zips,
String reloadCommand
);
注册一个可来自本地路径或远程 URL 的资源包。localPath 和 url 中应恰好有一个不为 null。
registerLocalResourcePack
ResourcePackManagerAPI.registerLocalResourcePack(
String pluginName,
String localPath,
boolean encrypts,
boolean distributes,
boolean zips,
String reloadCommand
);
从相对于 plugins 目录的本地路径注册资源包。
registerRemoteResourcePack
ResourcePackManagerAPI.registerRemoteResourcePack(
String pluginName,
String url,
boolean encrypts,
boolean distributes,
boolean zips,
String reloadCommand
);
注册一个将从提供的 URL 下载的资源包。
参数
| 参数 | 描述 |
|---|---|
pluginName | 你的插件名称,必须与插件列表中显示的完全一致。区分大小写。 |
localPath | 从 plugins 目录到你的资源包文件或文件夹的相对路径。 |
url | 下载资源包的 URL。 |
encrypts | 预留给未来使用。目前无效果。 |
distributes | 预留给未来使用。目前无效果。 |
zips | 资源包是否已经是压缩格式。如果为 false,ResourcePackManager 会在合并前进行压缩。 |
reloadCommand | 你的插件的重载命令。预留给未来使用。 |
触发重载
ResourcePackManagerAPI.reloadResourcePack();
重载 ResourcePackManager,重新合并所有已注册的资源包,如果启用了自动托管则重新托管结果。
注意事项
- 通过 API 注册的资源包参与
priorityOrder的方式与内置集成相同。在config.yml中将你的插件名称添加到priorityOrder以控制它在合并顺序中的位置。 - 如果你的插件名称未在
priorityOrder中列出,你的资源包将获得最低优先级。 - 注册应在你的插件的
onEnable或初始化期间进行,在 ResourcePackManager 完成自身初始化并触发首次合并之前。