The bug
Brewing stands will not take water bottles from hoppers or droppers when the bottles that were in it are taken out with a hopper below.
Steps to reproduce
Place a brewing stand
Place a hopper below it and on the side of it
Put three water bottles into the side hopper
Any additional water bottles will stay in the hopper
Code analysis
Based on 1.11.2 decompiled using MCP 9.35 rc1
The problem seems to be that the method net.minecraft.tileentity.TileEntityBrewingStand.isItemValidForSlot(int, ItemStack)
does more than it should. Assuming that it should only return if an item type is valid. In this case it would make also more sense to replace the ItemStack
parameter with an Item
parameter because the count should not matter. If this is the intended behavior the method net.minecraft.tileentity.TileEntityFurnace.isItemValidForSlot(int, ItemStack)
is not correctly working then.
Nevertheless the problem here is the change from representing empty slots with null
to representing them with 1 ⨯ air:0
. The problem here is that reducing the stack size results in 0 ⨯ air:0
objects but the method TileEntityBrewingStand.isItemValidForSlot(int, ItemStack)
tests for a 1 ⨯ air:0
constant. The method net.minecraft.item.ItemStack.isEmpty()
, which tests if an item is valid, should probably be used instead.
Attachments
Comments 33
i reported this but it looks like several beat me to it. when i destroy the brewing stand and set it up a set of water bottles flow into it just fine but once my potion is brewed and flushed and i try to feed water bottles a second time it jams and won't flow.
I have been affected by this issue too. I found that upon re-logging the next set of water bottles would be allowed through to brew but this did not fix the issue and any further bottles were prevented from going through.
I was just learning how to make an automatic brewer for the first time and I thought I was doing something wrong XD
Hi i think this is clearly related to my bug report: https://bugs.mojang.com/browse/MC-111749
Hoping they'll take a look at it