meta = $meta; } public function getName() : string{ return "Grass Path"; } public function getToolType() : int{ return Tool::TYPE_SHOVEL; } protected function recalculateBoundingBox() : ?AxisAlignedBB{ return new AxisAlignedBB( $this->x, $this->y, $this->z, $this->x + 1, $this->y + 1, //TODO: this should be 0.9375, but MCPE currently treats them as a full block (https://bugs.mojang.com/browse/MCPE-12109) $this->z + 1 ); } public function getHardness() : float{ return 0.6; } public function onUpdate(int $type){ if($type === Level::BLOCK_UPDATE_NORMAL and $this->getSide(Vector3::SIDE_UP)->isSolid()){ $this->level->setBlock($this, BlockFactory::get(Block::DIRT), true); return $type; } return false; } public function getDrops(Item $item) : array{ return [ ItemFactory::get(Item::DIRT, 0, 1) ]; } }