diff options
Diffstat (limited to 'src/main/java')
5 files changed, 26 insertions, 38 deletions
diff --git a/src/main/java/GoodGenerator/Blocks/TEs/FuelRefineFactory.java b/src/main/java/GoodGenerator/Blocks/TEs/FuelRefineFactory.java index f5cea433d3..15939c9c4f 100644 --- a/src/main/java/GoodGenerator/Blocks/TEs/FuelRefineFactory.java +++ b/src/main/java/GoodGenerator/Blocks/TEs/FuelRefineFactory.java @@ -25,19 +25,18 @@ import gregtech.api.util.GT_Utility; import net.minecraft.block.Block; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.StatCollector; import net.minecraft.world.World; import net.minecraftforge.fluids.FluidStack; import org.lwjgl.input.Keyboard; import java.util.ArrayList; -import java.util.Collection; import java.util.List; import static GoodGenerator.util.DescTextLocalization.BLUE_PRINT_INFO; import static com.gtnewhorizon.structurelib.structure.StructureUtility.*; import static gregtech.api.util.GT_StructureUtility.*; +import static gregtech.api.enums.GT_Values.V; public class FuelRefineFactory extends GT_MetaTileEntity_MultiblockBase_EM implements TecTechEnabledMulti, IConstructable { @@ -242,7 +241,7 @@ public class FuelRefineFactory extends GT_MetaTileEntity_MultiblockBase_EM imple ArrayList<FluidStack> tFluids = getStoredFluids(); ArrayList<ItemStack> tItems = getStoredInputs(); - Collection<GT_Recipe> tRecipes = MyRecipeAdder.instance.FRF.mRecipeList; + MyRecipeAdder.NaqFuelRefineMapper tRecipes = MyRecipeAdder.instance.FRF; for (int i = 0; i < tFluids.size() - 1; i++) { for (int j = i + 1; j < tFluids.size(); j++) { @@ -274,8 +273,11 @@ public class FuelRefineFactory extends GT_MetaTileEntity_MultiblockBase_EM imple ItemStack[] inItems = tItems.toArray(new ItemStack[0]); this.mEfficiency = 10000; - for (GT_Recipe recipe : tRecipes){ - if (recipe.mSpecialValue > Tier) continue; + long tVoltage = getMaxInputVoltage(); + byte tTier = (byte) Math.max(1, GT_Utility.getTier(tVoltage)); + GT_Recipe recipe = tRecipes.findRecipe(this.getBaseMetaTileEntity(), false, V[tTier], inFluids, inItems); + if (recipe != null) { + if (recipe.mSpecialValue > Tier) return false; if (recipe.isRecipeInputEqual(true, inFluids, inItems)){ mEUt = recipe.mEUt; mEUt = -Math.abs(mEUt); diff --git a/src/main/java/GoodGenerator/Blocks/TEs/MetalVaporTurbine.java b/src/main/java/GoodGenerator/Blocks/TEs/MetalVaporTurbine.java index febe7c0f3c..0ae306fe8b 100644 --- a/src/main/java/GoodGenerator/Blocks/TEs/MetalVaporTurbine.java +++ b/src/main/java/GoodGenerator/Blocks/TEs/MetalVaporTurbine.java @@ -1,4 +1,5 @@ package GoodGenerator.Blocks.TEs; public class MetalVaporTurbine{ + } diff --git a/src/main/java/GoodGenerator/Blocks/TEs/MultiNqGenerator.java b/src/main/java/GoodGenerator/Blocks/TEs/MultiNqGenerator.java index c7abee9d70..49cb7b3af9 100644 --- a/src/main/java/GoodGenerator/Blocks/TEs/MultiNqGenerator.java +++ b/src/main/java/GoodGenerator/Blocks/TEs/MultiNqGenerator.java @@ -32,7 +32,6 @@ import org.lwjgl.input.Keyboard; import java.util.ArrayList; import java.util.Arrays; -import java.util.Collection; import java.util.List; import static GoodGenerator.util.DescTextLocalization.BLUE_PRINT_INFO; @@ -45,19 +44,18 @@ public class MultiNqGenerator extends GT_MetaTileEntity_MultiblockBase_EM implem protected long leftEnergy = 0; protected long trueOutput = 0; protected int trueEff = 0; - protected boolean fluidLocker = true; protected FluidStack lockedFluid = null; protected int times = 1; protected int basicOutput; - private final List<Pair<FluidStack, Integer>> excitedLiquid = Arrays.asList( + private static final List<Pair<FluidStack, Integer>> excitedLiquid = Arrays.asList( new Pair<>(FluidRegistry.getFluidStack("molten.atomic separation catalyst", 20), 16), new Pair<>(Materials.Naquadah.getMolten(20L), 4), new Pair<>(Materials.Uranium235.getMolten(180L), 3), new Pair<>(Materials.Caesium.getMolten(180L), 2) ); - private final List<Pair<FluidStack, Integer>> coolant = Arrays.asList( + private static final List<Pair<FluidStack, Integer>> coolant = Arrays.asList( new Pair<>(FluidRegistry.getFluidStack("cryotheum", 1000), 275), new Pair<>(Materials.SuperCoolant.getFluid(1000L), 150), new Pair<>(FluidRegistry.getFluidStack("ic2coolant",1000), 105) @@ -169,7 +167,6 @@ public class MultiNqGenerator extends GT_MetaTileEntity_MultiblockBase_EM implem @Override public void loadNBTData(NBTTagCompound aNBT){ - this.fluidLocker = aNBT.getBoolean("mIsLocked"); this.times = aNBT.getInteger("mTimes"); this.leftEnergy = aNBT.getLong("mLeftEnergy"); this.basicOutput = aNBT.getInteger("mbasicOutput"); @@ -181,7 +178,6 @@ public class MultiNqGenerator extends GT_MetaTileEntity_MultiblockBase_EM implem @Override public void saveNBTData(NBTTagCompound aNBT){ - aNBT.setBoolean("mIsLocked", this.fluidLocker); aNBT.setInteger("mTimes", this.times); aNBT.setLong("mLeftEnergy", this.leftEnergy); aNBT.setInteger("mbasicOutput", this.basicOutput); @@ -196,7 +192,6 @@ public class MultiNqGenerator extends GT_MetaTileEntity_MultiblockBase_EM implem public boolean checkRecipe_EM(ItemStack aStack) { ArrayList<FluidStack> tFluids = getStoredFluids(); - Collection<GT_Recipe> tRecipes = MyRecipeAdder.instance.NqGFuels.mRecipeList; for (int i = 0; i < tFluids.size() - 1; i++) { for (int j = i + 1; j < tFluids.size(); j++) { @@ -211,24 +206,17 @@ public class MultiNqGenerator extends GT_MetaTileEntity_MultiblockBase_EM implem } } - int cnt = 0; - - for (GT_Recipe recipe : tRecipes) if (tFluids.contains(recipe.mFluidInputs[0])) cnt ++; - - if (cnt > 1) doExplosion(4 * 4); - - for (GT_Recipe tRecipe : MyRecipeAdder.instance.NqGFuels.mRecipeList) { - if (tFluids.contains(tRecipe.mFluidInputs[0])) { - Pair<FluidStack, Integer> excitedInfo = getExcited(tFluids.toArray(new FluidStack[0]), false); - int pall = excitedInfo == null ? 1 : excitedInfo.getValue(); - if (consumeFuel(CrackRecipeAdder.copyFluidWithAmount(tRecipe.mFluidInputs[0], pall), tFluids.toArray(new FluidStack[0]))) { - mOutputFluids = new FluidStack[]{CrackRecipeAdder.copyFluidWithAmount(tRecipe.mFluidOutputs[0], pall)}; - basicOutput = tRecipe.mSpecialValue; - times = pall; - lockedFluid = excitedInfo == null ? null : excitedInfo.getKey(); - mMaxProgresstime = tRecipe.mDuration; - return true; - } + GT_Recipe tRecipe = MyRecipeAdder.instance.NqGFuels.findRecipe(this.getBaseMetaTileEntity(), true, 1 << 30, tFluids.toArray(new FluidStack[0])); + if (tRecipe != null) { + Pair<FluidStack, Integer> excitedInfo = getExcited(tFluids.toArray(new FluidStack[0]), false); + int pall = excitedInfo == null ? 1 : excitedInfo.getValue(); + if (consumeFuel(CrackRecipeAdder.copyFluidWithAmount(tRecipe.mFluidInputs[0], pall), tFluids.toArray(new FluidStack[0]))) { + mOutputFluids = new FluidStack[]{CrackRecipeAdder.copyFluidWithAmount(tRecipe.mFluidOutputs[0], pall)}; + basicOutput = tRecipe.mSpecialValue; + times = pall; + lockedFluid = excitedInfo == null ? null : excitedInfo.getKey(); + mMaxProgresstime = tRecipe.mDuration; + return true; } } @@ -238,7 +226,7 @@ public class MultiNqGenerator extends GT_MetaTileEntity_MultiblockBase_EM implem @Override public boolean onRunningTick(ItemStack stack) { if (this.getBaseMetaTileEntity().isServerSide()) { - if (mProgresstime % 20 == 0 && mMaxProgresstime != 0) { + if (mMaxProgresstime != 0 && mProgresstime % 20 == 0) { FluidStack[] input = getStoredFluids().toArray(new FluidStack[0]); int eff = 100, time = 1; if (!consumeFuel(Materials.LiquidAir.getFluid(2400), input)) { @@ -309,7 +297,7 @@ public class MultiNqGenerator extends GT_MetaTileEntity_MultiblockBase_EM implem long voltage = tHatch.maxEUOutput(); long power = voltage * tHatch.maxAmperesOut(); long outputAmperes; - if (outputPower > power) doExplosion(4 * GT_Utility.getTier(power)); + if (outputPower > power) doExplosion(8 * GT_Utility.getTier(power)); if (outputPower >= voltage){ leftEnergy += outputPower; outputAmperes = leftEnergy / voltage; diff --git a/src/main/java/GoodGenerator/Loader/NaquadahReworkRecipeLoader.java b/src/main/java/GoodGenerator/Loader/NaquadahReworkRecipeLoader.java index 5d7017b088..b28b609963 100644 --- a/src/main/java/GoodGenerator/Loader/NaquadahReworkRecipeLoader.java +++ b/src/main/java/GoodGenerator/Loader/NaquadahReworkRecipeLoader.java @@ -198,7 +198,7 @@ public class NaquadahReworkRecipeLoader { }, new FluidStack[]{ P507.getFluidOrGas(1000), - Materials.SulfuricAcid.getFluid(4000) + Materials.SulfuricAcid.getFluid(32000) }, new FluidStack[]{ enrichedNaquadahRichSolution.getFluidOrGas(4000), @@ -305,7 +305,7 @@ public class NaquadahReworkRecipeLoader { lowQualityNaquadriaPhosphate.get(OrePrefixes.dust, 10), }, new FluidStack[]{ - Materials.SulfuricAcid.getFluid(10000) + Materials.SulfuricAcid.getFluid(30000) }, new FluidStack[]{ naquadriaRichSolution.getFluidOrGas(9000) diff --git a/src/main/java/GoodGenerator/util/MyRecipeAdder.java b/src/main/java/GoodGenerator/util/MyRecipeAdder.java index 3907ba7f9b..8f80256b49 100644 --- a/src/main/java/GoodGenerator/util/MyRecipeAdder.java +++ b/src/main/java/GoodGenerator/util/MyRecipeAdder.java @@ -18,7 +18,7 @@ public class MyRecipeAdder { StatCollector.translateToLocal("tile.recipe.naquadah_reactor"), null, "goodgenerator:textures/gui/naquadah_reactor", - 0,0,1,1,1, + 0,0,0,1,1, StatCollector.translateToLocal("value.naquadah_reactor") + " ", 1, " EU/t", @@ -53,14 +53,11 @@ public class MyRecipeAdder { ); public static class liquidMentalFuelMapper extends GT_Recipe.GT_Recipe_Map_Fuel{ - int lasting = 0; - public liquidMentalFuelMapper(Collection<GT_Recipe> aRecipeList, String aUnlocalizedName, String aLocalName, String aNEIName, String aNEIGUIPath, int aUsualInputCount, int aUsualOutputCount, int aMinimalInputItems, int aMinimalInputFluids, int aAmperage, String aNEISpecialValuePre, int aNEISpecialValueMultiplier, String aNEISpecialValuePost, boolean aShowVoltageAmperageInNEI, boolean aNEIAllowed){ super(aRecipeList, aUnlocalizedName, aLocalName, aNEIName, aNEIGUIPath, aUsualInputCount, aUsualOutputCount, aMinimalInputItems, aMinimalInputFluids, aAmperage, aNEISpecialValuePre, aNEISpecialValueMultiplier, aNEISpecialValuePost, aShowVoltageAmperageInNEI, aNEIAllowed); } public void addFuel(FluidStack input, FluidStack output, int EUt, int ticks){ - lasting = ticks; super.addRecipe(true, null, null, null, new FluidStack[]{input}, new FluidStack[]{output}, ticks, 0, EUt); } } |