diff options
Diffstat (limited to 'src/main/java/gregtech/loaders')
-rw-r--r-- | src/main/java/gregtech/loaders/postload/GT_PostLoad.java | 82 |
1 files changed, 20 insertions, 62 deletions
diff --git a/src/main/java/gregtech/loaders/postload/GT_PostLoad.java b/src/main/java/gregtech/loaders/postload/GT_PostLoad.java index 3e2a074148..5bf025cf20 100644 --- a/src/main/java/gregtech/loaders/postload/GT_PostLoad.java +++ b/src/main/java/gregtech/loaders/postload/GT_PostLoad.java @@ -5,7 +5,6 @@ import static gregtech.api.enums.Mods.Forestry; import static gregtech.api.enums.Mods.GalacticraftCore; import static gregtech.api.enums.Mods.GalacticraftMars; import static gregtech.api.enums.Mods.GalaxySpace; -import static gregtech.api.enums.Mods.IguanaTweaksTinkerConstruct; import static gregtech.api.enums.Mods.Thaumcraft; import static gregtech.api.util.GT_Recipe.GT_Recipe_Map.sFluidCannerRecipes; import static gregtech.api.util.GT_RecipeBuilder.TICKS; @@ -45,6 +44,7 @@ import gregtech.api.util.GT_Log; import gregtech.api.util.GT_ModHandler; import gregtech.api.util.GT_OreDictUnificator; import gregtech.api.util.GT_Recipe; +import gregtech.api.util.GT_RecipeBuilder; import gregtech.api.util.GT_RecipeRegistrator; import gregtech.api.util.GT_Utility; import gregtech.common.items.GT_MetaGenerated_Tool_01; @@ -114,69 +114,27 @@ public class GT_PostLoad { } public static void registerFluidCannerRecipes() { - ItemStack iSData0 = new ItemStack(Items.potionitem, 1, 0); - ItemStack iLData0 = ItemList.Bottle_Empty.get(1L); - for (FluidContainerRegistry.FluidContainerData tData : FluidContainerRegistry .getRegisteredFluidContainerData()) { - if ((tData.filledContainer.getItem() == Items.potionitem) && (tData.filledContainer.getItemDamage() == 0)) { - GT_Values.RA.stdBuilder() - .itemInputs(iLData0) - .itemOutputs(iSData0) - .fluidInputs(Materials.Water.getFluid(250L)) - .duration(4 * TICKS) - .eut(1) - .addTo(sFluidCannerRecipes); - GT_Values.RA.stdBuilder() - .itemInputs(iSData0) - .itemOutputs(iLData0) - .duration(4 * TICKS) - .eut(1) - .addTo(sFluidCannerRecipes); - } else if (IguanaTweaksTinkerConstruct.isModLoaded() && tData.emptyContainer.isItemEqual( - Objects.requireNonNull( - GT_ModHandler.getModItem(IguanaTweaksTinkerConstruct.ID, "clayBucketFired", 1L, 0)))) { - GT_Values.RA.stdBuilder() - .itemInputs( - GT_ModHandler.getModItem(IguanaTweaksTinkerConstruct.ID, "clayBucketFired", 1L, 0)) - .itemOutputs(tData.filledContainer) - .fluidInputs(tData.fluid) - .duration((tData.fluid.amount / 62) * TICKS) - .eut(1) - .addTo(sFluidCannerRecipes); - GT_Values.RA.stdBuilder() - .itemInputs(tData.filledContainer) - .itemOutputs( - GT_ModHandler.getModItem(IguanaTweaksTinkerConstruct.ID, "clayBucketFired", 1L, 0)) - .fluidOutputs(tData.fluid) - .duration((tData.fluid.amount / 62) * TICKS) - .eut(1) - .addTo(sFluidCannerRecipes); - } else { - GT_Values.RA.stdBuilder() - .itemInputs(tData.emptyContainer) - .itemOutputs(tData.filledContainer) - .fluidInputs(tData.fluid) - .duration((tData.fluid.amount / 62) * TICKS) - .eut(1) - .addTo(sFluidCannerRecipes); - if (GT_Utility.getContainerItem(tData.filledContainer, true) == null) { - GT_Values.RA.stdBuilder() - .itemInputs(tData.filledContainer) - .fluidOutputs(tData.fluid) - .duration((tData.fluid.amount / 62) * TICKS) - .eut(1) - .addTo(sFluidCannerRecipes); - } else { - GT_Values.RA.stdBuilder() - .itemInputs(tData.filledContainer) - .itemOutputs(GT_Utility.getContainerItem(tData.filledContainer, true)) - .fluidOutputs(tData.fluid) - .duration((tData.fluid.amount / 62) * TICKS) - .eut(1) - .addTo(sFluidCannerRecipes); - } - } + // lava clay bucket is registered with empty container with 0 stack size + ItemStack emptyContainer = tData.emptyContainer.copy(); + emptyContainer.stackSize = 1; + GT_Values.RA.stdBuilder() + .itemInputs(emptyContainer) + .itemOutputs(tData.filledContainer) + .fluidInputs(tData.fluid) + .duration((tData.fluid.amount / 62) * TICKS) + .eut(1) + .addTo(sFluidCannerRecipes); + GT_RecipeBuilder builder = GT_Values.RA.stdBuilder() + .itemInputs(tData.filledContainer); + if (tData.emptyContainer.stackSize > 0) { + builder.itemOutputs(tData.emptyContainer); + } + builder.fluidOutputs(tData.fluid) + .duration((tData.fluid.amount / 62) * TICKS) + .eut(1) + .addTo(sFluidCannerRecipes); } } |