diff --git a/src/pocketmine/block/Stone.php b/src/pocketmine/block/Stone.php index 2892e8967..a00dff8f2 100644 --- a/src/pocketmine/block/Stone.php +++ b/src/pocketmine/block/Stone.php @@ -24,8 +24,26 @@ namespace pocketmine\block; use pocketmine\item\Item; class Stone extends Solid{ - public function __construct(){ - parent::__construct(self::STONE, 0, "Stone"); + const STONE = 0; + const GRANITE = 1; + const POLISHED_GRANITE = 2; + const DIORITE = 3; + const POLISHED_DIORITE = 4; + const ANDESITE = 5; + const POLISHED_ANDESITE = 6; + + public function __construct($meta = 0){ + parent::__construct(self::STONE, $meta, "Stone"); + $names = [ + self::STONE => "Stone", + self::GRANITE => "Granite", + self::POLISHED_GRANITE => "Polished Granite", + self::DIORITE => "Diorite", + self::POLISHED_DIORITE => "Polished Diorite", + self::ANDESITE => "Andesite", + self::POLISHED_ANDESITE => "Polished Andesite", + ]; + $this->name = $names[$this->meta & 0x07]; $this->hardness = 30; } diff --git a/src/pocketmine/inventory/CraftingManager.php b/src/pocketmine/inventory/CraftingManager.php index 839aec433..cefae6e38 100644 --- a/src/pocketmine/inventory/CraftingManager.php +++ b/src/pocketmine/inventory/CraftingManager.php @@ -22,6 +22,7 @@ namespace pocketmine\inventory; use pocketmine\block\Planks; +use pocketmine\block\Stone; use pocketmine\block\Wood; use pocketmine\block\Wood2; use pocketmine\item\Item; @@ -145,8 +146,15 @@ class CraftingManager{ $this->registerRecipe((new StonecutterShapelessRecipe(Item::get(Item::STONE_BRICK_STAIRS, 0, 4)))->addIngredient(Item::get(Item::STONE_BRICK, 0, 6))); $this->registerRecipe((new StonecutterShapelessRecipe(Item::get(Item::STONE_BRICK, 0, 4)))->addIngredient(Item::get(Item::STONE, 0, 4))); $this->registerRecipe((new StonecutterShapelessRecipe(Item::get(Item::SLAB, 5, 6)))->addIngredient(Item::get(Item::STONE_BRICK, 0, 3))); - $this->registerRecipe((new StonecutterShapelessRecipe(Item::get(Item::SLAB, 0, 6)))->addIngredient(Item::get(Item::STONE, 0, 6))); + $this->registerRecipe((new StonecutterShapelessRecipe(Item::get(Item::SLAB, 0, 6)))->addIngredient(Item::get(Item::STONE, null, 3))); $this->registerRecipe((new StonecutterShapelessRecipe(Item::get(Item::COBBLESTONE_STAIRS, 0, 4)))->addIngredient(Item::get(Item::COBBLESTONE, 0, 6))); + + $this->registerRecipe((new StonecutterShapelessRecipe(Item::get(Item::STONE, Stone::POLISHED_GRANITE, 4)))->addIngredient(Item::get(Item::STONE, Stone::GRANITE, 4))); + $this->registerRecipe((new StonecutterShapelessRecipe(Item::get(Item::STONE, Stone::POLISHED_DIORITE, 4)))->addIngredient(Item::get(Item::STONE, Stone::DIORITE, 4))); + $this->registerRecipe((new StonecutterShapelessRecipe(Item::get(Item::STONE, Stone::POLISHED_ANDESITE, 4)))->addIngredient(Item::get(Item::STONE, Stone::ANDESITE, 4))); + $this->registerRecipe((new StonecutterShapelessRecipe(Item::get(Item::STONE, Stone::GRANITE, 1)))->addIngredient(Item::get(Item::STONE, Stone::DIORITE, 1))->addIngredient(Item::get(Item::QUARTZ, 0, 1))); + $this->registerRecipe((new StonecutterShapelessRecipe(Item::get(Item::STONE, Stone::DIORITE, 2)))->addIngredient(Item::get(Item::COBBLESTONE, 0, 2))->addIngredient(Item::get(Item::QUARTZ, 0, 2))); + $this->registerRecipe((new StonecutterShapelessRecipe(Item::get(Item::STONE, Stone::ANDESITE, 2)))->addIngredient(Item::get(Item::COBBLESTONE, 0, 1))->addIngredient(Item::get(Item::STONE, Stone::DIORITE, 1))); } protected function registerFood(){