diff --git a/1.10.2/src/main/java/com/rwtema/extrautils2/items/ItemFilterFluids.java b/1.10.2/src/main/java/com/rwtema/extrautils2/items/ItemFilterFluids.java index c28e0d6..2a0c121 100644 --- a/1.10.2/src/main/java/com/rwtema/extrautils2/items/ItemFilterFluids.java +++ b/1.10.2/src/main/java/com/rwtema/extrautils2/items/ItemFilterFluids.java @@ -210,7 +210,7 @@ public boolean matches(@Nonnull ItemStack filterStack, FluidStack target) { Item item = ghostStack.getItem(); if (item instanceof IFluidFilter) { IFluidFilter filter = (IFluidFilter) item; - if (filter.matches(ghostStack, target)) { + if (filter.matches(ghostStack, target) == !inverted) { return !inverted; } } diff --git a/1.10.2/src/main/java/com/rwtema/extrautils2/items/ItemFilterItems.java b/1.10.2/src/main/java/com/rwtema/extrautils2/items/ItemFilterItems.java index 3770f68..7444076 100644 --- a/1.10.2/src/main/java/com/rwtema/extrautils2/items/ItemFilterItems.java +++ b/1.10.2/src/main/java/com/rwtema/extrautils2/items/ItemFilterItems.java @@ -133,7 +133,7 @@ public boolean matches(@Nonnull ItemStack filterStack, ItemStack target) { if (useOreDic) { int[] ghostOreIDs = OreDictionary.getOreIDs(ghostStack); - int[] targetOreIDs = OreDictionary.getOreIDs(ghostStack); + int[] targetOreIDs = OreDictionary.getOreIDs(target); for (int a : ghostOreIDs) { for (int b : targetOreIDs) { if (a == b) return !inverted; diff --git a/1.10.2/src/main/java/com/rwtema/extrautils2/tile/TileTrashCanFluids.java b/1.10.2/src/main/java/com/rwtema/extrautils2/tile/TileTrashCanFluids.java index a78ed3c..968bc1b 100644 --- a/1.10.2/src/main/java/com/rwtema/extrautils2/tile/TileTrashCanFluids.java +++ b/1.10.2/src/main/java/com/rwtema/extrautils2/tile/TileTrashCanFluids.java @@ -34,7 +34,7 @@ public IFluidTankProperties[] getTankProperties() { @Override public int fill(FluidStack resource, boolean doFill) { - return resource != null ? resource.amount : 0; + return resource != null && (FILTER.isEmpty() || FILTER.matches(resource)) ? resource.amount : 0; } @Nullable