@Override public boolean allowFluid(FluidStack fluid) { if (fluid == null) { return flags[flagBlackList]; } if (recalc) { calcItems(); } if (customFilterFluids != null) { for (CustomFilterFluid customFilterFluids : this.customFilterFluids) { if (customFilterFluids.filter.matchesFluid(customFilterFluids.filterStack, fluid)) { return !flags[flagBlackList]; } } } if (fluid.tag == null || flags[flagIgnoreNBT]) { return !flags[flagBlackList] == fluidsSimple.contains(fluid.getFluid()); } else { fluid = fluid.copy(); fluid.amount = 1; return !flags[flagBlackList] == fluidsNBT.contains(fluid); } }