/** * Given an pocketmine\item\Item object, it returns a friendly name * for it. * * @param Item item * @return str */ public static function str(Item $item) { if (self::$xnames == null) { self::initXnames(); } if (isset(self::$xnames[$item->getId()])) { if (isset(self::$xnames[$item->getId()][$item->getDamage()])) { return self::$xnames[$item->getId()][$item->getDamage()]; } elseif (isset(self::$xnames[$item->getId()]["*"])) { return self::$xnames[$item->getId()]["*"]; } else { return self::$xnames[$item->getId()][0]; } } $n = $item->getName(); if ($n != "Unknown") { return $n; } if (count(self::$items) == 0) { $constants = array_keys((new \ReflectionClass("pocketmine\\item\\Item"))->getConstants()); foreach ($constants as $constant) { $id = constant("pocketmine\\item\\Item::{$constant}"); $constant = str_replace("_", " ", $constant); self::$items[$id] = $constant; } } if (isset(self::$items[$item->getId()])) { return self::$items[$item->getId()]; } return $n; }