diff --git a/src/main/java/net/minecraftforge/fluids/capability/TileFluidHandler.java b/src/main/java/net/minecraftforge/fluids/capability/TileFluidHandler.java index 5d6a289b8f..efe8cd9d9c 100644 --- a/src/main/java/net/minecraftforge/fluids/capability/TileFluidHandler.java +++ b/src/main/java/net/minecraftforge/fluids/capability/TileFluidHandler.java @@ -23,7 +23,7 @@ public class TileFluidHandler extends BlockEntity { protected FluidTank tank = new FluidTank(FluidAttributes.BUCKET_VOLUME); - private final LazyOptional holder = LazyOptional.of(() -> tank); + private LazyOptional holder = LazyOptional.of(() -> tank); public TileFluidHandler(@Nonnull BlockEntityType blockEntityType, BlockPos pos, BlockState state) { @@ -52,4 +52,16 @@ public class TileFluidHandler extends BlockEntity return holder.cast(); return super.getCapability(capability, facing); } + + @Override + public void invalidateCaps() { + super.invalidateCaps(); + holder.invalidate(); + } + + @Override + public void reviveCaps() { + super.reviveCaps(); + holder = LazyOptional.of(() -> tank); + } }