@Override @Nullable public FluidStack drain(FluidStack resource) { FluidTank[] outputTanks = tankAccess.getOutputTanks(); if (outputTanks.length >= 1 && outputTanks[0] != null) { tankAccess.setTanksDirty(); return outputTanks[0].drain(resource, true); } return null; }
@Override protected void onContentsChanged() { super.onContentsChanged(); if (tile instanceof ITankAccess) { ((ITankAccess) tile).setTanksDirty(); } else if (tile != null) { tile.markDirty(); } }
@Override protected void onContentsChanged() { super.onContentsChanged(); if (tile instanceof ITankAccess) { ((ITankAccess) tile).setTanksDirty(); } else if (tile != null) { tile.markDirty(); } }
@Override public int fill(FluidStack resource) { FluidTank inputTank = tankAccess.getInputTank(resource); if (inputTank != null) { tankAccess.setTanksDirty(); return inputTank.fill(resource, true); } return 0; }
@Override public void setTanksDirty() { if (tank != null) { FluidStack stack = tank.getFluid(); if (stack != null && stack.amount > 0) { for (ITankAccess parent : parents) { FluidTank ptank = parent.getInputTank(stack); if (ptank != null) { stack.amount -= ptank.fill(stack, true); parent.setTanksDirty(); if (stack.amount <= 0) { return; } } } } tank.setCapacity(0); parents.clear(); } }
tank.setTanksDirty(); if (doFill) { if (fill.remainder.itemStack.isEmpty()) {