aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/GoodGenerator/Blocks/TEs/FuelRefineFactory.java12
-rw-r--r--src/main/java/GoodGenerator/Blocks/TEs/MetalVaporTurbine.java1
-rw-r--r--src/main/java/GoodGenerator/Blocks/TEs/MultiNqGenerator.java42
-rw-r--r--src/main/java/GoodGenerator/Loader/NaquadahReworkRecipeLoader.java4
-rw-r--r--src/main/java/GoodGenerator/util/MyRecipeAdder.java5
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);
}
}