diff --git a/src/main/java/com/lothrazar/cyclic/block/generatorfluid/RecipeGeneratorFluid.java b/src/main/java/com/lothrazar/cyclic/block/generatorfluid/RecipeGeneratorFluid.java index 349b6f6b4..d3be7fe18 100644 --- a/src/main/java/com/lothrazar/cyclic/block/generatorfluid/RecipeGeneratorFluid.java +++ b/src/main/java/com/lothrazar/cyclic/block/generatorfluid/RecipeGeneratorFluid.java @@ -1,5 +1,7 @@ package com.lothrazar.cyclic.block.generatorfluid; +import java.util.List; + import com.google.gson.JsonObject; import com.lothrazar.cyclic.ModCyclic; import com.lothrazar.cyclic.registry.CyclicRecipeType; @@ -10,13 +12,16 @@ import net.minecraft.core.RegistryAccess; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.resources.ResourceLocation; +import net.minecraft.tags.TagKey; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.crafting.Ingredient; import net.minecraft.world.item.crafting.Recipe; import net.minecraft.world.item.crafting.RecipeSerializer; import net.minecraft.world.item.crafting.RecipeType; import net.minecraft.world.level.Level; +import net.minecraft.world.level.material.Fluid; import net.minecraftforge.fluids.FluidStack; +import net.minecraftforge.registries.ForgeRegistries; public class RecipeGeneratorFluid implements Recipe { @@ -61,6 +66,12 @@ public FluidStack getRecipeFluid() { return fluidIng.getFluidStack(); } + public List getFluidsFromTag() { + TagKey tag = ForgeRegistries.FLUIDS.tags().createTagKey(new ResourceLocation(this.fluidIng.getTag())); + List list = ForgeRegistries.FLUIDS.tags().getTag(tag).stream().toList(); + return list; + } + @Override public boolean matches(TileGeneratorFluid inv, Level worldIn) { try { diff --git a/src/main/java/com/lothrazar/cyclic/block/generatorfluid/TileGeneratorFluid.java b/src/main/java/com/lothrazar/cyclic/block/generatorfluid/TileGeneratorFluid.java index 82d952d05..aef344fae 100644 --- a/src/main/java/com/lothrazar/cyclic/block/generatorfluid/TileGeneratorFluid.java +++ b/src/main/java/com/lothrazar/cyclic/block/generatorfluid/TileGeneratorFluid.java @@ -121,6 +121,7 @@ private ArrayList indexFluidsFromRecipes() { ArrayList fluids = new ArrayList<>(); for (RecipeGeneratorFluid recipe : recipes) { fluids.add(recipe.getRecipeFluid().getFluid()); + fluids.addAll(recipe.getFluidsFromTag()); } return fluids; }