Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dapigguy/libpiggyeconomy
A PocketMine-MP virion for easy support of multiple economy providers.
https://github.com/dapigguy/libpiggyeconomy
libpiggyeconomy pmmp virion
Last synced: about 1 month ago
JSON representation
A PocketMine-MP virion for easy support of multiple economy providers.
- Host: GitHub
- URL: https://github.com/dapigguy/libpiggyeconomy
- Owner: DaPigGuy
- License: apache-2.0
- Created: 2019-11-15T05:25:45.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2024-03-08T03:47:34.000Z (8 months ago)
- Last Synced: 2024-04-25T04:24:20.916Z (7 months ago)
- Topics: libpiggyeconomy, pmmp, virion
- Language: PHP
- Homepage:
- Size: 43 KB
- Stars: 10
- Watchers: 4
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# libPiggyEconomy
libPiggyEconomy is a virion for easy support of multiple economy providers.
## Supported Providers
- [EconomyAPI](https://poggit.pmmp.io/p/EconomyAPI) by onebone/poggit-orphanage
- [BedrockEconomy](https://poggit.pmmp.io/p/BedrockEconomy) by cooldogedev
- Experience (PMMP)## Usage
### Setup
```php
libPiggyEconomy::init()
```### Using Economy Providers
```php
libPiggyEconomy::getProvider($providerInformation)
````$providerInformation` is an array with the key ```provider```.
#### Economy Provider Methods
| Method | Description | Callback Signature | Callback Description |
|---------------------------------------------------------------------------------------------------|----------------------------|------------------------------------------------------|---------------------------------------------------------------------------|
| ```EconomyProvider::getMonetaryUnit(): string``` | Returns symbol of currency | `none` | `none` |
| ```EconomyProvider::getMoney(Player $player, callable $callback): void``` | Get balance of a player |function(float|int $amount) void{}
| Returns default balance if player wasn't found, float|int otherwise. |
| ```EconomyProvider::giveMoney(Player $player, float $amount, ?callable $callback = null): void``` | Give money to a player | `function(bool $success): void{}` | Returns true if money was given successfully, otherwise false. |
| ```EconomyProvider::takeMoney(Player $player, float $amount, ?callable $callback = null): void``` | Take money from a player | `function(bool $success): void{}` | Returns true if money was taken successfully, otherwise false. |
| ```EconomyProvider::setMoney(Player $player, float $amount, ?callable $callback = null): void``` | Set balance of a player | `function(bool $success): void{}` | Returns true if money was set successfully, otherwise false. |### Error Handling
There are several exceptions that can be thrown that you may want to handle in your plugin:
* MissingProviderDependencyException
* UnknownProviderException## Examples
config.yml
```yaml
economy:
provider: bedrockeconomy
```AmazingPlugin.php
```php
class AmazingPlugin extends PluginBase{
public $economyProvider;
public function onEnable(): void{
$this->saveDefaultConfig();
libPiggyEconomy::init();
$this->economyProvider = libPiggyEconomy::getProvider($this->getConfig()->get("economy"));
}
}
```