API do ResourcePackManager
O ResourcePackManager expõe uma API Java que permite que outros plugins registrem seus resource packs para mesclagem em tempo de execução.
Acessando a API
A classe da API é com.magmaguy.resourcepackmanager.api.ResourcePackManagerAPI. Todos os métodos são estáticos.
Registrando um Resource Pack
Existem três métodos de registro dependendo se seu pack é local, remoto ou qualquer um dos dois.
registerResourcePack
ResourcePackManagerAPI.registerResourcePack(
String pluginName,
String localPath,
String url,
boolean encrypts,
boolean distributes,
boolean zips,
String reloadCommand
);
Registra um resource pack que pode vir de um caminho local ou uma URL remota. Exatamente um entre localPath ou url deve ser não-nulo.
registerLocalResourcePack
ResourcePackManagerAPI.registerLocalResourcePack(
String pluginName,
String localPath,
boolean encrypts,
boolean distributes,
boolean zips,
String reloadCommand
);
Registra um resource pack a partir de um caminho local relativo ao diretório plugins.
registerRemoteResourcePack
ResourcePackManagerAPI.registerRemoteResourcePack(
String pluginName,
String url,
boolean encrypts,
boolean distributes,
boolean zips,
String reloadCommand
);
Registra um resource pack que será baixado da URL fornecida.
Parâmetros
| Parâmetro | Descrição |
|---|---|
pluginName | O nome do seu plugin exatamente como aparece na lista de plugins. Sensível a maiúsculas/minúsculas. |
localPath | Caminho relativo do diretório plugins para o arquivo ou pasta do seu resource pack. |
url | URL para baixar o resource pack. |
encrypts | Reservado para uso futuro. Atualmente não faz nada. |
distributes | Reservado para uso futuro. Atualmente não faz nada. |
zips | Se o resource pack já está compactado. Se false, o ResourcePackManager irá compactá-lo antes da mesclagem. |
reloadCommand | O comando de recarga do seu plugin. Reservado para uso futuro. |
Acionando uma Recarga
ResourcePackManagerAPI.reloadResourcePack();
Recarrega o ResourcePackManager, que re-mescla todos os packs registrados e re-hospeda o resultado se a hospedagem automática estiver ativada.
Notas
- Packs registrados através da API participam da
priorityOrderda mesma forma que as integrações embutidas. Adicione o nome do seu plugin aopriorityOrdernoconfig.ymlpara controlar onde ele fica na ordem de mesclagem. - Se o nome do seu plugin não estiver listado em
priorityOrder, seu pack recebe a prioridade mais baixa. - O registro deve acontecer durante o
onEnableou inicialização do seu plugin, antes do ResourcePackManager terminar sua própria inicialização e acionar a primeira mesclagem.