Stack Storage API

Version 1.1.0 or higher
sql.yml

English

What Stack Storage

Stack storage allows you to retrieve items indefinitely with a stress-free operation feeling using chests.
Github
Download

First step

Load StackStorage API and SQLError

use ree_jp\stackStorage\api\StackStorageAPI;
use ree_jp\stackStorage\libs\poggit\libasynql\SqlError;

Add

Add items to storage

StackStorageAPI::instance->add($p->getXuid(), $item);

Remove

Reduce items from storage
Note: If you try to reduce more items stored in storage, it will be processed normally

StackStorageAPI::instance->remove($p->getXuid(), $item);

getCount

Gets the total number of items in storage
Returns the number of items specified in Closure

StackStorageAPI::instance->getCount($player->getXuid(),Item::get(ItemIds::STONE),
   function(int $count) {
      echo 'have stone '.$count;
   },function (SqlError $error) {
      echo 'error '.$error->getMessage();
   }
)

getAllItems

Gets all items in storage
Closure returns all items in an array

StackStorageAPI::instance->getAllItems($p->getXuid(),
   function (array $items) use ($p, $xuid) {
      foreach ($items as $item) {
         if ($item instanceof Item) {
            echo $item->getName() . '(' . $item->getCount() . ')';
         }
      }
   },function (SqlError $error) {
      echo 'error '.$error->getMessage();
   }
)

日本語

スタックストレージとは

スタックストレージはチェストを使用したストレスフリーな操作感で無限にアイテムを取り出すことができます

Add

アイテムをストレージに追加します

Remove

ストレージからアイテムを減らします
注意: ストレージに保存されているより多くのアイテムを減らそうとした時も正常に処理されます

getCount

指定したアイテムのストレージに保存されている数を取得します
Closureで指定したアイテムの個数を数字で返されます

getAllItems

ストレージに保存されているすべてのアイテムを取得します
Closureですべてのアイテムが配列に入れられて返されます

ree