本文整理匯總了PHP中pocketmine\inventory\Inventory::getContents方法的典型用法代碼示例。如果您正苦於以下問題:PHP Inventory::getContents方法的具體用法?PHP Inventory::getContents怎麽用?PHP Inventory::getContents使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類pocketmine\inventory\Inventory
的用法示例。
在下文中一共展示了Inventory::getContents方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: saveInventory
public function saveInventory(Player $player, Inventory $inv)
{
$n = trim(strtolower($player->getName()));
if ($n === "") {
return false;
}
$d = substr($n, 0, 1);
if (!is_dir($this->getDataFolder() . $d)) {
mkdir($this->getDataFolder() . $d);
}
$path = $this->getDataFolder() . $d . "/" . $n . ".yml";
$cfg = new Config($path, Config::YAML);
$yaml = $cfg->getAll();
if ($this->isGlobal) {
$ln = "*";
} else {
$ln = trim(strtolower($player->getLevel()->getName()));
}
$yaml[$ln] = [];
foreach ($inv->getContents() as $slot => &$item) {
$yaml[$ln][$slot] = implode(":", [$item->getId(), $item->getDamage(), $item->getCount()]);
}
$inv->clearAll();
$cfg->setAll($yaml);
$cfg->save();
return true;
}
示例2: saveInventory
public function saveInventory(Player $player, Inventory $inv)
{
$n = trim(strtolower($player->getName()));
if ($n === "") {
return false;
}
if ($this->isGlobal) {
$ln = "*";
} else {
$ln = trim(strtolower($player->getLevel()->getName()));
}
// Save inventory...
$sql = "DELETE FROM NetherChests WHERE player=" . $this->prepare($n) . " AND world=" . $this->prepare($ln);
$this->database->query($sql);
foreach ($inv->getContents() as $slot => &$item) {
$sql = "INSERT INTO NetherChests (player,world,slot,id,damage,count) VALUES (" . $this->prepare($n) . ", " . $this->prepare($ln) . ", " . $slot . ", " . $item->getId() . ", " . $item->getDamage() . ", " . $item->getCount() . ")";
$this->database->query($sql);
}
$inv->clearAll();
return true;
}