From 2db8e30b1d2151fdde5d08a6c06aef55f0c397d2 Mon Sep 17 00:00:00 2001 From: Foghrye4 Date: Fri, 27 Jan 2017 11:32:28 +0300 Subject: License, readme and stuff --- .../metallurgy/InjectionMoldTileEntity.java | 34 +++++++++++++++------- 1 file changed, 24 insertions(+), 10 deletions(-) (limited to 'ihl/processing/metallurgy/InjectionMoldTileEntity.java') diff --git a/ihl/processing/metallurgy/InjectionMoldTileEntity.java b/ihl/processing/metallurgy/InjectionMoldTileEntity.java index ce3f339..e87acd8 100644 --- a/ihl/processing/metallurgy/InjectionMoldTileEntity.java +++ b/ihl/processing/metallurgy/InjectionMoldTileEntity.java @@ -2,6 +2,7 @@ package ihl.processing.metallurgy; import java.util.ArrayList; import java.util.Arrays; +import java.util.List; import java.util.Map; import net.minecraft.entity.item.EntityItem; @@ -41,7 +42,7 @@ public class InjectionMoldTileEntity extends TileEntity implements IFluidHandler public static void addRecipe(FluidStack input, ItemStack input1, ItemStack output) { - recipeManager.addRecipe(new UniversalRecipeInput(Arrays.asList(new FluidStack[] {input}),Arrays.asList(new ItemStack[] {input1})), new UniversalRecipeOutput(null,Arrays.asList(new ItemStack[]{output}),20)); + recipeManager.addRecipe(new UniversalRecipeInput((new FluidStack[] {input}),(new ItemStack[] {input1})), new UniversalRecipeOutput(null,(new ItemStack[]{output}),20)); } @Override @@ -66,7 +67,7 @@ public class InjectionMoldTileEntity extends TileEntity implements IFluidHandler { return IC2.platform.isSimulating(); } - + @Override public void updateEntity() { @@ -78,13 +79,30 @@ public class InjectionMoldTileEntity extends TileEntity implements IFluidHandler if(formattedFluidName!="") { int fluidAmountPerItem = Details.getMeltingFluidAmount(this.resultSuffix); - int fluidAmountPerItem2 = Details.getMeltingFluidAmount("nugget"); ArrayList resultList = OreDictionary.getOres(this.resultSuffix+formattedFluidName); - if(resultList.isEmpty()) + if(resultList.isEmpty() || fluidAmountPerItem<=0) { - resultList=new ArrayList(); - if(IHLUtils.getItemStackIfExist(this.resultSuffix+formattedFluidName)!=null)resultList.add(IHLUtils.getItemStackIfExist(this.resultSuffix+formattedFluidName)); +// IHLMod.log.info("Injection mold: resultList.isEmpty() || fluidAmountPerItem<=0"); + resultList=new ArrayList(); + List fi = Arrays.asList(new FluidStack[] {this.fluidTank.getFluid()}); + List ii = Arrays.asList(new ItemStack[] {IHLUtils.getThisModItemStackWithDamage("injectionMold", this.resultSuffix.hashCode() & Integer.MAX_VALUE)}); + UniversalRecipeOutput ro = recipeManager.getOutputFor(fi, ii, false, false); + if(ro!=null) + { + // IHLMod.log.info("Injection mold: ro not null"); + ItemStack stack = ro.getItemOutputs().get(0).itemStack.copy(); + stack.stackSize=Math.round(ro.getItemOutputs().get(0).quantity); + resultList.add(stack); + UniversalRecipeInput ri = recipeManager.getRecipeInput(fi, ii); + fluidAmountPerItem = ri.getFluidInputs().get(0).getAmount(); + // IHLMod.log.info("fluidAmountPerItem="+fluidAmountPerItem); + } + else + { + // IHLMod.log.info("Injection mold: ro is null. Input stack: "+ii.get(0).toString()); + } } + int fluidAmountPerItem2 = Details.getMeltingFluidAmount("nugget"); ArrayList resultList2 = OreDictionary.getOres("nugget"+formattedFluidName); if(!resultList.isEmpty()) { @@ -132,10 +150,6 @@ public class InjectionMoldTileEntity extends TileEntity implements IFluidHandler private String getFormattedMaterialName(String input) { - if(input.length()<8) - { - return ""; - } String input2 = input.replace("molten.", "").replace(".molten", ""); String firstletter = String.valueOf(input2.charAt(0)).toUpperCase(); input2 = input2.replaceFirst(".", firstletter); -- cgit v1.2.3