API ResourcePackManager
ResourcePackManager expose une API Java qui permet à d'autres plugins d'enregistrer leurs packs de ressources pour la fusion au moment de l'exécution.
Accéder à l'API
La classe API est com.magmaguy.resourcepackmanager.api.ResourcePackManagerAPI. Toutes les méthodes sont statiques.
Enregistrer un pack de ressources
Il existe trois méthodes d'enregistrement selon que votre pack est local, distant ou l'un ou l'autre.
registerResourcePack
ResourcePackManagerAPI.registerResourcePack(
String pluginName,
String localPath,
String url,
boolean encrypts,
boolean distributes,
boolean zips,
String reloadCommand
);
Enregistre un pack de ressources qui peut provenir d'un chemin local ou d'une URL distante. Exactement l'un des paramètres localPath ou url doit être non-null.
registerLocalResourcePack
ResourcePackManagerAPI.registerLocalResourcePack(
String pluginName,
String localPath,
boolean encrypts,
boolean distributes,
boolean zips,
String reloadCommand
);
Enregistre un pack de ressources depuis un chemin local relatif au répertoire plugins.
registerRemoteResourcePack
ResourcePackManagerAPI.registerRemoteResourcePack(
String pluginName,
String url,
boolean encrypts,
boolean distributes,
boolean zips,
String reloadCommand
);
Enregistre un pack de ressources qui sera téléchargé depuis l'URL fournie.
Paramètres
| Paramètre | Description |
|---|---|
pluginName | Le nom de votre plugin exactement tel qu'il apparaît dans la liste des plugins. Sensible à la casse. |
localPath | Chemin relatif depuis le répertoire plugins vers votre fichier ou dossier de pack de ressources. |
url | URL depuis laquelle télécharger le pack de ressources. |
encrypts | Réservé pour une utilisation future. Ne fait rien actuellement. |
distributes | Réservé pour une utilisation future. Ne fait rien actuellement. |
zips | Indique si le pack de ressources est déjà zippé. Si false, ResourcePackManager le zippera avant la fusion. |
reloadCommand | La commande de rechargement de votre plugin. Réservé pour une utilisation future. |
Déclencher un rechargement
ResourcePackManagerAPI.reloadResourcePack();
Recharge ResourcePackManager, qui refusionne tous les packs enregistrés et réhéberge le résultat si l'hébergement automatique est activé.
Ce que cette API ne couvre pas
Les entités Bedrock personnalisées ne s'enregistrent pas via cette classe. Un plugin les apporte en livrant des ressources d'entités Bedrock natives sous assets/<namespace>/rspm_bedrock_pack/ dans son pack Java ; RSPM les transporte dans le pack Bedrock généré et l'extension Geyser embarquée enregistre les définitions qui en résultent. Voir Conversion Bedrock et Extension Geyser et entités personnalisées.
Notes
- Les packs enregistrés via l'API participent à
priorityOrderde la même manière que les intégrations internes. Ajoutez le nom de votre plugin àpriorityOrderdansconfig.ymlpour contrôler sa position dans l'ordre de fusion. - Si le nom de votre plugin n'est pas listé dans
priorityOrder, votre pack reçoit la priorité la plus basse. - L'enregistrement doit se faire durant le
onEnableou l'initialisation de votre plugin, avant que ResourcePackManager ne termine sa propre initialisation et ne déclenche la première fusion.