CraftingRecipe: added methods to allow recipes to derive outputs from inputs

this will be needed for special recipes like shulker-box and banner recipes.
This commit is contained in:
Dylan K. Taylor
2018-03-28 19:54:52 +01:00
parent 8572e9e560
commit a1090623a2
5 changed files with 24 additions and 8 deletions

View File

@ -121,7 +121,7 @@ class CraftingTransaction extends InventoryTransaction{
}
try{
$this->repetitions = $this->matchRecipeItems($this->outputs, $this->recipe->getResults(), false);
$this->repetitions = $this->matchRecipeItems($this->outputs, $this->recipe->getResultsFor($this->source->getCraftingGrid()), false);
if(($inputIterations = $this->matchRecipeItems($this->inputs, $this->recipe->getIngredientList(), true)) !== $this->repetitions){
throw new \InvalidStateException("Tried to craft recipe $this->repetitions times in batch, but have enough inputs for $inputIterations");