registerShapelessRecipe(new ShapelessRecipe( array_map($itemDeserializerFunc, $recipe["input"]), array_map($itemDeserializerFunc, $recipe["output"]) )); } foreach($recipes["shaped"] as $recipe){ if($recipe["block"] !== "crafting_table"){ //TODO: filter others out for now to avoid breaking economics continue; } $result->registerShapedRecipe(new ShapedRecipe( $recipe["shape"], array_map($itemDeserializerFunc, $recipe["input"]), array_map($itemDeserializerFunc, $recipe["output"]) )); } foreach($recipes["smelting"] as $recipe){ if($recipe["block"] !== "furnace"){ //TODO: filter others out for now to avoid breaking economics continue; } $result->getFurnaceRecipeManager()->register(new FurnaceRecipe( Item::jsonDeserialize($recipe["output"]), Item::jsonDeserialize($recipe["input"])) ); } return $result; } }