Creative inventory update with unknown item filter

This commit is contained in:
Dylan K. Taylor 2016-10-27 12:13:27 +01:00
parent ae1501884b
commit 9d16f145dd
3 changed files with 3341 additions and 579 deletions

View File

@ -1567,10 +1567,10 @@ class Server{
InventoryType::init();
Block::init();
Enchantment::init();
Item::init();
Biome::init();
Effect::init();
Enchantment::init();
Attribute::init();
$this->craftingManager = new CraftingManager();

View File

@ -227,8 +227,15 @@ class Item implements ItemIds{
$creativeItems = new Config(Server::getInstance()->getFilePath() . "src/pocketmine/resources/creativeitems.json", Config::JSON, []);
foreach($creativeItems->getAll() as $item){
self::addCreativeItem(Item::get($item["ID"], $item["Damage"]));
foreach($creativeItems->getAll() as $data){
$item = Item::get($data["id"], $data["damage"]);
if($item->getName() === "Unknown"){
continue;
}
if(isset($data["nbt"])){
$item->setNamedTag(NBT::parseJson(json_encode($data["nbt"])));
}
self::addCreativeItem($item);
}
}
@ -241,7 +248,7 @@ class Item implements ItemIds{
}
public static function addCreativeItem(Item $item){
Item::$creative[] = Item::get($item->getId(), $item->getDamage());
Item::$creative[] = clone $item;
}
public static function removeCreativeItem(Item $item){

File diff suppressed because it is too large Load Diff