From 539538d551f356d9fa2ecc1b34f5959832b82639 Mon Sep 17 00:00:00 2001 From: Runakai1 Date: Sat, 13 Aug 2022 19:09:15 +0200 Subject: [PATCH] Stuff Changed --- .../github/nei/recipes/FluidRecipe.java | 30 +++++++++++-------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java b/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java index e1907c85..14294294 100644 --- a/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java +++ b/src/main/java/com/glodblock/github/nei/recipes/FluidRecipe.java @@ -7,6 +7,10 @@ import com.glodblock.github.nei.object.IRecipeExtractor; import com.glodblock.github.nei.object.IRecipeExtractorLegacy; import com.glodblock.github.nei.object.OrderStack; import gregtech.common.items.GT_FluidDisplayItem; +import net.minecraft.item.ItemStack; +import net.minecraft.server.MinecraftServer; +import net.minecraft.util.ChatComponentText; +import net.minecraftforge.fluids.FluidStack; import java.util.ArrayList; import java.util.Collections; @@ -32,23 +36,23 @@ public final class FluidRecipe { IRecipeExtractor extractor = IdentifierMap.get(tRecipe.getOverlayIdentifier()); if (extractor == null) return new ArrayList<>(); List tmp = new ArrayList<>(tRecipe.getIngredientStacks(index)); - List fluidClone = new ArrayList<>(); + List> out = extractor.getInputIngredients(tmp, recipe, index); if (priority) { - for (int i = 0; i < tmp.size(); i++) { - if(tmp.get(i).item.getItem() instanceof GT_FluidDisplayItem) { - PositionedStack Stack = tmp.get(i); - fluidClone.add(Stack); - } - } - for (int i = 0; i < fluidClone.size(); i++) { - tmp.remove(fluidClone.get(i)); + List> reordered = new ArrayList<>(); + byte numFluids = 0; + for (OrderStack orderStack : out) { + if (orderStack.getStack() instanceof FluidStack) { + reordered.add(new OrderStack(orderStack.getStack(), numFluids++)); } - Collections.reverse(fluidClone); - for (int i = 0; i < fluidClone.size(); i++) { - tmp.add(0, fluidClone.get(i)); } + for (OrderStack orderStack : out) { + if (orderStack.getStack() instanceof ItemStack) { + reordered.add(new OrderStack(orderStack.getStack(), numFluids++)); + } + } + return reordered; } - return extractor.getInputIngredients(tmp, recipe, index); + return out; } public static List> getPackageOutputs(IRecipeHandler recipe, int index, boolean useOther) {