diff --git a/CHANGELOG.md b/CHANGELOG.md index 051fabe5f..898dece49 100755 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ - Every machine now compares on damage and NBT by default (raoulvdberge) - Updated JEI, fixes crashes (way2muchnoise) - Fixed crash with Disk Manipulator (way2muchnoise) +- Fixed autocrafting not giving back byproducts (raoulvdberge) - New art by CyanideX (CyanideX) ### 1.0.5 diff --git a/src/main/java/refinedstorage/api/autocrafting/ICraftingPattern.java b/src/main/java/refinedstorage/api/autocrafting/ICraftingPattern.java index 06709771e..a6f2affa0 100755 --- a/src/main/java/refinedstorage/api/autocrafting/ICraftingPattern.java +++ b/src/main/java/refinedstorage/api/autocrafting/ICraftingPattern.java @@ -33,6 +33,11 @@ public interface ICraftingPattern { */ List getOutputs(); + /** + * @return the byproducts + */ + List getByproducts(); + /** * @return the id of the factory that creates a crafting task for this pattern, as defined in the registry */ diff --git a/src/main/java/refinedstorage/apiimpl/autocrafting/CraftingPattern.java b/src/main/java/refinedstorage/apiimpl/autocrafting/CraftingPattern.java index 315dfb099..a49e464a0 100755 --- a/src/main/java/refinedstorage/apiimpl/autocrafting/CraftingPattern.java +++ b/src/main/java/refinedstorage/apiimpl/autocrafting/CraftingPattern.java @@ -91,6 +91,11 @@ public class CraftingPattern implements ICraftingPattern { return outputs; } + @Override + public List getByproducts() { + return byproducts; + } + @Override public String getId() { return ItemPattern.isProcessing(stack) ? CraftingTaskFactoryProcessing.ID : CraftingTaskFactoryNormal.ID; diff --git a/src/main/java/refinedstorage/apiimpl/autocrafting/task/CraftingTaskNormal.java b/src/main/java/refinedstorage/apiimpl/autocrafting/task/CraftingTaskNormal.java index 5692e5b03..9644942a2 100755 --- a/src/main/java/refinedstorage/apiimpl/autocrafting/task/CraftingTaskNormal.java +++ b/src/main/java/refinedstorage/apiimpl/autocrafting/task/CraftingTaskNormal.java @@ -45,6 +45,11 @@ public class CraftingTaskNormal extends CraftingTask { network.insertItem(output, output.stackSize, false); } + for (ItemStack byproduct : pattern.getByproducts()) { + // @TODO: Handle remainder + network.insertItem(byproduct, byproduct.stackSize, false); + } + return true; }