jasonw4331 / libcustompack
A library for compiling and registering resource packs with PocketMine
Fund package maintenance!
jasonw4331
Patreon
www.buymeacoffee.com/jasonwynn10
Requires
- php: ^8.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.11
- phpstan/extension-installer: ^1.0
- phpstan/phpstan: ^1.4.6
- phpstan/phpstan-strict-rules: ^1.0
- pocketmine/pocketmine-mp: ^4.12.3|^5.0.0
- symfony/filesystem: ^5.4
This package is auto-updated.
Last update: 2024-12-18 08:07:09 UTC
README
A small library for building and registering resource packs with PocketMine-MP
Usage
This viron was made for developers to build resource packs from plugin resources or from files on the disk, and allows adding new resource packs to the stack without requiring a server restart. NOTE: New resource packs are not automatically updated for previously loaded players. Only new players will see new resource packs.
Required imports
The following imports are necessary to use the virion library:
use libCustomPack\libCustomPack;
API
Building a resource pack
2 methods are added which allow build a resource pack using the plugin's resource directory or any other given path.
libCustomPack::generatePackFromResources($plugin); //OR libCustomPack::generatePackFromPath($plugin, $MyFullFolderPath);
Registering a resource pack
A resource pack can be added to the resource stack using the registerResourcePack()
method.
libCustomPack::registerResourcePack($resoucePackInstance);
Unregistering a resource pack
During a plugin's onDisable() method, it is recommended to call the unregisterResourcePack()
method to be removed from the resource stack.
libCustomPack::unregisterResourcePack($resoucePackInstance);
SubFolders
If the resource pack is a folder we don't know the exact location of within the given folder, we can use the $packFolderName
parameter to specify the name of the folder to be found.
The default subfolder name is the plugin's name followed by " Pack".
libCustomPack::generatePackFromResources($plugin, $packFolderName); //OR libCustomPack::generatePackFromPath($plugin, $MyFullFolderPath, $packFolderName);