aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com>2022-12-20 05:40:20 +0000
committerGTNH-Colen <54497873+GTNH-Colen@users.noreply.github.com>2022-12-20 05:40:20 +0000
commitc304ea893cf81ed764b2256301a760a17ccba6ef (patch)
tree8feb8176252baea94459c3aaa4f28300985b5cd9 /src
parentd10374e653a60e9f0a1df8655513a12f0a602403 (diff)
downloadGT5-Unofficial-c304ea893cf81ed764b2256301a760a17ccba6ef.tar.gz
GT5-Unofficial-c304ea893cf81ed764b2256301a760a17ccba6ef.tar.bz2
GT5-Unofficial-c304ea893cf81ed764b2256301a760a17ccba6ef.zip
Refactor
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/github/technus/tectech/loader/thing/ThingsLoader.java3
-rw-r--r--src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipe.java126
-rw-r--r--src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipeStorage.java89
-rw-r--r--src/main/java/com/github/technus/tectech/recipe/TT_recipeAdder.java2
-rw-r--r--src/main/java/com/github/technus/tectech/thing/casing/SpacetimeCompressionFieldCasing.java32
-rw-r--r--src/main/java/com/github/technus/tectech/thing/casing/StabilisationFieldCasing.java31
-rw-r--r--src/main/java/com/github/technus/tectech/thing/casing/TT_Block_TimeAccelerationFieldGenerators.java1
-rw-r--r--src/main/java/com/github/technus/tectech/thing/casing/TimeAccelerationFieldCasing.java33
-rw-r--r--src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java1631
9 files changed, 1617 insertions, 331 deletions
diff --git a/src/main/java/com/github/technus/tectech/loader/thing/ThingsLoader.java b/src/main/java/com/github/technus/tectech/loader/thing/ThingsLoader.java
index 14e4b3a090..bb85ccf170 100644
--- a/src/main/java/com/github/technus/tectech/loader/thing/ThingsLoader.java
+++ b/src/main/java/com/github/technus/tectech/loader/thing/ThingsLoader.java
@@ -34,7 +34,8 @@ public class ThingsLoader implements Runnable {
TT_Container_Casings.sBlockCasingsBA0 = new GT_Block_CasingsBA0();
TecTech.LOGGER.info("Nikolai's Casing registered");
- TT_Block_SpacetimeCompressionFieldGenerators.SpacetimeCompressionFieldGenerators = new SpacetimeCompressionFieldCasing();
+ TT_Block_SpacetimeCompressionFieldGenerators.SpacetimeCompressionFieldGenerators =
+ new SpacetimeCompressionFieldCasing();
TecTech.LOGGER.info("Spacetime Compression Field Casings registered.");
TT_Block_TimeAccelerationFieldGenerators.TimeAccelerationFieldGenerator = new TimeAccelerationFieldCasing();
diff --git a/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipe.java b/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipe.java
index 112e227fe8..5e7cfac127 100644
--- a/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipe.java
+++ b/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipe.java
@@ -1,19 +1,18 @@
package com.github.technus.tectech.recipe;
+import static com.google.common.math.LongMath.pow;
+import static gregtech.api.util.GT_Utility.getPlasmaFuelValueInEUPerLiterFromMaterial;
+
import gregtech.api.enums.Materials;
+import java.util.*;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.Fluid;
import net.minecraftforge.fluids.FluidStack;
import org.apache.commons.lang3.tuple.Pair;
import pers.gwyog.gtneioreplugin.util.GT5OreLayerHelper;
-
-import java.util.*;
-import java.util.stream.Collectors;
-import java.util.stream.Stream;
-
-import static com.google.common.math.LongMath.pow;
-import static gregtech.api.enums.GT_Values.getMaxPlasmaTurbineEfficiency;
-import static gregtech.api.util.GT_Utility.getPlasmaFuelValueInEUPerLiterFromMaterial;
+import pers.gwyog.gtneioreplugin.util.GT5OreSmallHelper;
public class EyeOfHarmonyRecipe {
@@ -32,18 +31,19 @@ public class EyeOfHarmonyRecipe {
private final long miningTimeSeconds;
-
- public EyeOfHarmonyRecipe(GT5OreLayerHelper.OreDimensionWrapper dimensionWrapper,
- double recipeEnergyEfficiency,
- long hydrogenRequirement,
- long heliumRequirement,
- long miningTimeSeconds,
- long spacetimeCasingTierRequired,
- long euOutput,
- double baseSuccessChance
- ) {
+ public EyeOfHarmonyRecipe(
+ GT5OreLayerHelper.NormalOreDimensionWrapper normalOreDimensionWrapper,
+ GT5OreSmallHelper.SmallOreDimensionWrapper smallOreDimensionWrapper,
+ double recipeEnergyEfficiency, // E.g. 90% efficient = 0.9 = lose 10% EU from plasma + EU output.
+ long hydrogenRequirement,
+ long heliumRequirement,
+ long miningTimeSeconds,
+ long spacetimeCasingTierRequired,
+ long euOutput,
+ double baseSuccessChance) {
// 6 * 64 = 6 stacks/second.
- ArrayList<Pair<Materials, Long>> materialList = processDimension(dimensionWrapper, miningTimeSeconds, 6 * 64);
+ ArrayList<Pair<Materials, Long>> materialList =
+ processDimension(normalOreDimensionWrapper, smallOreDimensionWrapper, miningTimeSeconds, 6 * 64);
this.outputItems = validDustGenerator(materialList);
this.outputFluids = validPlasmaGenerator(materialList, 0.1);
@@ -101,12 +101,14 @@ public class EyeOfHarmonyRecipe {
return spacetimeCasingTierRequired;
}
- static final double primaryMultiplier = (0.1 + 1.0/9.0); // Byproduct from macerating/washing chance.
- static final double secondaryMultiplier = (1.0/9.0); // Thermal centrifuge byproduct chance.
+ static final double primaryMultiplier = (0.1 + 1.0 / 9.0); // Byproduct from macerating/washing chance.
+ static final double secondaryMultiplier = (1.0 / 9.0); // Thermal centrifuge byproduct chance.
static final double tertiaryMultiplier = (0.1); // Macerating thermal centrifuged byproduct chance.
static final double quaternaryMultiplier = (0.7); // Mercury/chem bath processing chance.
- static final double[] oreMultiplier = {primaryMultiplier, secondaryMultiplier, tertiaryMultiplier, quaternaryMultiplier};
+ static final double[] oreMultiplier = {
+ primaryMultiplier, secondaryMultiplier, tertiaryMultiplier, quaternaryMultiplier
+ };
private static class HashMapHelper extends HashMap<Materials, Double> {
@@ -124,24 +126,35 @@ public class EyeOfHarmonyRecipe {
}
static void processHelper(HashMapHelper outputMap, Materials material, double mainMultiplier, double probability) {
- outputMap.add(material, (material.mOreMultiplier * 2) * mainMultiplier * probability);
+ outputMap.add(material.mDirectSmelting, (material.mOreMultiplier * 2) * mainMultiplier * probability);
int index = 0;
for (Materials byProductMaterial : material.mOreByProducts) {
- outputMap.add(byProductMaterial, mainMultiplier * (oreMultiplier[index++] * 2) * probability);
+ outputMap.add(
+ byProductMaterial.mDirectSmelting, mainMultiplier * (oreMultiplier[index++] * 2) * probability);
}
}
- static ArrayList<Pair<Materials, Long>> processDimension(GT5OreLayerHelper.OreDimensionWrapper dimWrapper, long timeInSeconds, long miningMultiplier) {
+ static ArrayList<Pair<Materials, Long>> processDimension(
+ GT5OreLayerHelper.NormalOreDimensionWrapper normalOreDimWrapper,
+ GT5OreSmallHelper.SmallOreDimensionWrapper smallOreDimWrapper,
+ long timeInSeconds,
+ long miningMultiplier) {
HashMapHelper outputMap = new HashMapHelper();
double mainMultiplier = timeInSeconds * miningMultiplier;
- dimWrapper.oreVeinToProbabilityInDimension.forEach((veinInfo, probability) -> {
+ normalOreDimWrapper.oreVeinToProbabilityInDimension.forEach((veinInfo, probability) -> {
processHelper(outputMap, veinInfo.mPrimaryVeinMaterial, mainMultiplier, probability);
processHelper(outputMap, veinInfo.mSecondaryMaterial, mainMultiplier, probability);
- processHelper(outputMap, veinInfo.mBetweenMaterial, mainMultiplier, probability);
- processHelper(outputMap, veinInfo.mSporadicMaterial, mainMultiplier, probability);
+ // 8.0 to replicate void miner getDropsVanillaVeins method yields.
+ processHelper(outputMap, veinInfo.mBetweenMaterial, mainMultiplier / 8.0, probability);
+ processHelper(outputMap, veinInfo.mSporadicMaterial, mainMultiplier / 8.0, probability);
+ });
+
+ // Iterate over small ores in dimension and add them, kinda hacky but works and is close enough.
+ smallOreDimWrapper.oreVeinToProbabilityInDimension.forEach((veinInfo, probability) -> {
+ processHelper(outputMap, veinInfo.getOreMaterial(), mainMultiplier, probability);
});
ArrayList<Pair<Materials, Long>> outputList = new ArrayList<>();
@@ -151,7 +164,8 @@ public class EyeOfHarmonyRecipe {
return outputList;
}
- static FluidStack[] validPlasmaGenerator(final List<Pair<Materials, Long>> planetList, final double percentageOfPlasma) {
+ static FluidStack[] validPlasmaGenerator(
+ final List<Pair<Materials, Long>> planetList, final double percentageOfPlasma) {
List<FluidStack> plasmaList = new ArrayList<>();
@@ -163,9 +177,9 @@ public class EyeOfHarmonyRecipe {
return plasmaList.toArray(new FluidStack[0]);
}
- static List<Pair<ItemStack, Long>> validDustGenerator(final List<Pair<Materials, Long>> planetList) {
+ static ArrayList<Pair<ItemStack, Long>> validDustGenerator(final ArrayList<Pair<Materials, Long>> planetList) {
- List<Pair<ItemStack, Long>> dustList = new ArrayList<>();
+ ArrayList<Pair<ItemStack, Long>> dustList = new ArrayList<>();
for (Pair<Materials, Long> pair : planetList) {
ItemStack dust = pair.getLeft().getDust(1);
@@ -186,27 +200,33 @@ public class EyeOfHarmonyRecipe {
return (long) (total * getMaxPlasmaTurbineEfficiency());
}
+ public static double getMaxPlasmaTurbineEfficiency() {
+ // I hate Shirabon.
+ return 3.85;
+ }
+
static final List<Materials> validPlasmas = Stream.of(
- Materials.Helium,
- Materials.Boron,
- Materials.Nitrogen,
- Materials.Oxygen,
- Materials.Sulfur,
- Materials.Calcium,
- Materials.Titanium,
- Materials.Iron,
- Materials.Nickel,
- Materials.Zinc,
- Materials.Niobium,
- Materials.Silver,
- Materials.Tin,
- Materials.Bismuth,
- Materials.Americium,
- Materials.Niobium
- ).collect(Collectors.toList());
-
- static HashMap<Fluid, Long> plasmaEnergyMap = new HashMap<Fluid, Long>() {{
- validPlasmas.forEach((material -> put(material.getPlasma(1).getFluid(), (long) getPlasmaFuelValueInEUPerLiterFromMaterial(material))));
- }};
+ Materials.Helium,
+ Materials.Boron,
+ Materials.Nitrogen,
+ Materials.Oxygen,
+ Materials.Sulfur,
+ Materials.Calcium,
+ Materials.Titanium,
+ Materials.Iron,
+ Materials.Nickel,
+ Materials.Zinc,
+ Materials.Silver,
+ Materials.Tin,
+ Materials.Bismuth,
+ Materials.Americium,
+ Materials.Niobium)
+ .collect(Collectors.toList());
+
+ static HashMap<Fluid, Long> plasmaEnergyMap = new HashMap<Fluid, Long>() {
+ {
+ validPlasmas.forEach((material -> put(
+ material.getPlasma(1).getFluid(), (long) getPlasmaFuelValueInEUPerLiterFromMaterial(material))));
+ }
+ };
}
-
diff --git a/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipeStorage.java b/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipeStorage.java
index 4c2255a5f4..936228584c 100644
--- a/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipeStorage.java
+++ b/src/main/java/com/github/technus/tectech/recipe/EyeOfHarmonyRecipeStorage.java
@@ -1,66 +1,69 @@
package com.github.technus.tectech.recipe;
-import com.google.common.math.LongMath;
-import gregtech.api.GregTech_API;
+import java.util.HashMap;
import net.minecraft.block.Block;
import net.minecraft.item.ItemStack;
-import org.lwjgl.Sys;
import pers.gwyog.gtneioreplugin.plugin.block.BlockDimensionDisplay;
import pers.gwyog.gtneioreplugin.plugin.block.ModBlocks;
import pers.gwyog.gtneioreplugin.util.DimensionHelper;
-
-import java.util.HashMap;
-
-import static pers.gwyog.gtneioreplugin.util.GT5OreLayerHelper.dimToOreWrapper;
+import pers.gwyog.gtneioreplugin.util.GT5OreLayerHelper;
+import pers.gwyog.gtneioreplugin.util.GT5OreSmallHelper;
public class EyeOfHarmonyRecipeStorage {
-// static final long MILLION = LongMath.pow(10, 6);
-// static final long BILLION = LongMath.pow(10, 9);
-// static final long TRILLION = LongMath.pow(10, 12);
-// static final long QUADRILLION = LongMath.pow(10, 15);
-// static final long QUINTILLION = LongMath.pow(10, 18);
-// static final long SEXTILLION = LongMath.pow(10, 21);
+ // static final long MILLION = LongMath.pow(10, 6);
+ // static final long BILLION = LongMath.pow(10, 9);
+ // static final long TRILLION = LongMath.pow(10, 12);
+ // static final long QUADRILLION = LongMath.pow(10, 15);
+ // static final long QUINTILLION = LongMath.pow(10, 18);
+ // static final long SEXTILLION = LongMath.pow(10, 21);
// Map is unique so this is fine.
- HashMap<Block, String> blocksMapInverted = new HashMap<Block, String>() {{
- ModBlocks.blocks.forEach((dimString, dimBlock) -> {
- put(dimBlock, dimString);
- });
- }};
+ HashMap<Block, String> blocksMapInverted = new HashMap<Block, String>() {
+ {
+ ModBlocks.blocks.forEach((dimString, dimBlock) -> {
+ put(dimBlock, dimString);
+ });
+ }
+ };
- private final HashMap<String, EyeOfHarmonyRecipe> recipeHashMap = new HashMap<String, EyeOfHarmonyRecipe>() {{
- for (String dimAbbreviation : DimensionHelper.DimNameDisplayed) {
- BlockDimensionDisplay a = (BlockDimensionDisplay) ModBlocks.blocks.get(dimAbbreviation);
+ private final HashMap<String, EyeOfHarmonyRecipe> recipeHashMap = new HashMap<String, EyeOfHarmonyRecipe>() {
+ {
+ for (String dimAbbreviation : DimensionHelper.DimNameDisplayed) {
+ BlockDimensionDisplay a = (BlockDimensionDisplay) ModBlocks.blocks.get(dimAbbreviation);
- try {
- put(dimAbbreviation, new EyeOfHarmonyRecipe(
- dimToOreWrapper.get(dimAbbreviation),
- 1.0,
- 100,
- 100,
- 36_000L,
- 0,
- 100 * 10,
- 0.4));
- } catch(Exception e) {
- e.printStackTrace();
- System.out.println(dimAbbreviation + " dimension not found in dimToOreWrapper");
+ try {
+ put(
+ dimAbbreviation,
+ new EyeOfHarmonyRecipe(
+ GT5OreLayerHelper.dimToOreWrapper.get(dimAbbreviation),
+ GT5OreSmallHelper.dimToSmallOreWrapper.get(dimAbbreviation),
+ 1.0,
+ 100,
+ 100,
+ 36_000L,
+ 0,
+ 100 * 10,
+ 0.4));
+ } catch (Exception e) {
+ e.printStackTrace();
+ System.out.println(dimAbbreviation + " dimension not found in dimToOreWrapper");
+ }
}
}
- }};
+ };
public EyeOfHarmonyRecipe recipeLookUp(ItemStack aStack) {
String dimAbbreviation = blocksMapInverted.get(Block.getBlockFromItem(aStack.getItem()));
return recipeHashMap.get(dimAbbreviation);
}
-// public EyeOfHarmonyRecipe overworld = new EyeOfHarmonyRecipe(dimToOreWrapper.get("Ow"),
-// 1.0,
-// 100,
-// 100,
-// 36_000L,
-// 0,
-// 100 * 10,
-// 0.4);
+ // public EyeOfHarmonyRecipe overworld = new EyeOfHarmonyRecipe(dimToOreWrapper.get("Ow"),
+ // 1.0,
+ // 100,
+ // 100,
+ // 36_000L,
+ // 0,
+ // 100 * 10,
+ // 0.4);
}
diff --git a/src/main/java/com/github/technus/tectech/recipe/TT_recipeAdder.java b/src/main/java/com/github/technus/tectech/recipe/TT_recipeAdder.java
index 21c83c03d8..559231f846 100644
--- a/src/main/java/com/github/technus/tectech/recipe/TT_recipeAdder.java
+++ b/src/main/java/com/github/technus/tectech/recipe/TT_recipeAdder.java
@@ -486,6 +486,4 @@ public class TT_recipeAdder extends GT_RecipeAdder {
check));
return true;
}
-
-
}
diff --git a/src/main/java/com/github/technus/tectech/thing/casing/SpacetimeCompressionFieldCasing.java b/src/main/java/com/github/technus/tectech/thing/casing/SpacetimeCompressionFieldCasing.java
index 92ec8ae390..59d8ff7ef3 100644
--- a/src/main/java/com/github/technus/tectech/thing/casing/SpacetimeCompressionFieldCasing.java
+++ b/src/main/java/com/github/technus/tectech/thing/casing/SpacetimeCompressionFieldCasing.java
@@ -1,5 +1,7 @@
package com.github.technus.tectech.thing.casing;
+import static com.github.technus.tectech.thing.casing.GT_Block_CasingsTT.texturePage;
+
import com.github.technus.tectech.thing.CustomItemList;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -8,6 +10,7 @@ import gregtech.api.objects.GT_CopiedBlockTexture;
import gregtech.api.util.GT_LanguageManager;
import gregtech.common.blocks.GT_Block_Casings_Abstract;
import gregtech.common.blocks.GT_Material_Casings;
+import java.util.List;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
@@ -15,10 +18,6 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraft.world.IBlockAccess;
-import java.util.List;
-
-import static com.github.technus.tectech.thing.casing.GT_Block_CasingsTT.texturePage;
-
/**
* Created by danie_000 on 03.10.2016.
*/
@@ -30,16 +29,24 @@ public class SpacetimeCompressionFieldCasing extends GT_Block_Casings_Abstract {
public SpacetimeCompressionFieldCasing() {
super(GT_Item_CasingsBA0.class, "gt.spacetime_compression_field_generator", GT_Material_Casings.INSTANCE);
for (byte b = 0; b < 16; b = (byte) (b + 1)) {
- Textures.BlockIcons.casingTexturePages[texturePage][b + START_INDEX] = new GT_CopiedBlockTexture(this, 6, b);
+ Textures.BlockIcons.casingTexturePages[texturePage][b + START_INDEX] =
+ new GT_CopiedBlockTexture(this, 6, b);
}
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".0.name", "Crude Spacetime Compression Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".1.name", "Primitive Spacetime Compression Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".2.name", "Stable Spacetime Compression Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".3.name", "Superb Spacetime Compression Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".4.name", "Resplendent Spacetime Compression Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".5.name", "Perfect Spacetime Compression Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".6.name", "Tipler Grade Spacetime Compression Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".0.name", "Crude Spacetime Compression Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".1.name", "Primitive Spacetime Compression Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".2.name", "Stable Spacetime Compression Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".3.name", "Superb Spacetime Compression Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".4.name", "Resplendent Spacetime Compression Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".5.name", "Perfect Spacetime Compression Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".6.name", "Tipler Grade Spacetime Compression Field Generator");
CustomItemList.SpacetimeCompressionFieldGeneratorTier0.set(new ItemStack(this, 1, 0));
CustomItemList.SpacetimeCompressionFieldGeneratorTier1.set(new ItemStack(this, 1, 1));
@@ -48,7 +55,6 @@ public class SpacetimeCompressionFieldCasing extends GT_Block_Casings_Abstract {
CustomItemList.SpacetimeCompressionFieldGeneratorTier4.set(new ItemStack(this, 1, 4));
CustomItemList.SpacetimeCompressionFieldGeneratorTier5.set(new ItemStack(this, 1, 5));
CustomItemList.SpacetimeCompressionFieldGeneratorTier6.set(new ItemStack(this, 1, 6));
-
}
@Override
diff --git a/src/main/java/com/github/technus/tectech/thing/casing/StabilisationFieldCasing.java b/src/main/java/com/github/technus/tectech/thing/casing/StabilisationFieldCasing.java
index 79ecf062e7..05d97b0eb3 100644
--- a/src/main/java/com/github/technus/tectech/thing/casing/StabilisationFieldCasing.java
+++ b/src/main/java/com/github/technus/tectech/thing/casing/StabilisationFieldCasing.java
@@ -1,5 +1,7 @@
package com.github.technus.tectech.thing.casing;
+import static com.github.technus.tectech.thing.casing.GT_Block_CasingsTT.texturePage;
+
import com.github.technus.tectech.thing.CustomItemList;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -8,6 +10,7 @@ import gregtech.api.objects.GT_CopiedBlockTexture;
import gregtech.api.util.GT_LanguageManager;
import gregtech.common.blocks.GT_Block_Casings_Abstract;
import gregtech.common.blocks.GT_Material_Casings;
+import java.util.List;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
@@ -15,10 +18,6 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraft.world.IBlockAccess;
-import java.util.List;
-
-import static com.github.technus.tectech.thing.casing.GT_Block_CasingsTT.texturePage;
-
public class StabilisationFieldCasing extends GT_Block_Casings_Abstract {
private static IIcon texture_tier_0;
@@ -27,16 +26,24 @@ public class StabilisationFieldCasing extends GT_Block_Casings_Abstract {
public StabilisationFieldCasing() {
super(GT_Item_CasingsBA0.class, "gt.stabilisation_field_generator", GT_Material_Casings.INSTANCE);
for (byte b = 0; b < 16; b = (byte) (b + 1)) {
- Textures.BlockIcons.casingTexturePages[texturePage][b + START_INDEX] = new GT_CopiedBlockTexture(this, 6, b);
+ Textures.BlockIcons.casingTexturePages[texturePage][b + START_INDEX] =
+ new GT_CopiedBlockTexture(this, 6, b);
}
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".0.name", "Crude Stabilisation Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".1.name", "Primitive Stabilisation Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".2.name", "Stable Stabilisation Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".3.name", "Superb Stabilisation Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".4.name", "Resplendent Stabilisation Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".5.name", "Perfect Stabilisation Dilation Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".6.name", "Tipler Grade Stabilisation Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".0.name", "Crude Stabilisation Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".1.name", "Primitive Stabilisation Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".2.name", "Stable Stabilisation Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".3.name", "Superb Stabilisation Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".4.name", "Resplendent Stabilisation Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".5.name", "Perfect Stabilisation Dilation Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".6.name", "Tipler Grade Stabilisation Field Generator");
CustomItemList.StabilisationFieldGeneratorTier0.set(new ItemStack(this, 1, 0));
CustomItemList.StabilisationFieldGeneratorTier1.set(new ItemStack(this, 1, 1));
diff --git a/src/main/java/com/github/technus/tectech/thing/casing/TT_Block_TimeAccelerationFieldGenerators.java b/src/main/java/com/github/technus/tectech/thing/casing/TT_Block_TimeAccelerationFieldGenerators.java
index 101410baec..ecb070aa5c 100644
--- a/src/main/java/com/github/technus/tectech/thing/casing/TT_Block_TimeAccelerationFieldGenerators.java
+++ b/src/main/java/com/github/technus/tectech/thing/casing/TT_Block_TimeAccelerationFieldGenerators.java
@@ -6,5 +6,4 @@ public class TT_Block_TimeAccelerationFieldGenerators {
public static Block TimeAccelerationFieldGenerator;
private TT_Block_TimeAccelerationFieldGenerators() {}
-
}
diff --git a/src/main/java/com/github/technus/tectech/thing/casing/TimeAccelerationFieldCasing.java b/src/main/java/com/github/technus/tectech/thing/casing/TimeAccelerationFieldCasing.java
index baf55af3fd..fc6ec97dd5 100644
--- a/src/main/java/com/github/technus/tectech/thing/casing/TimeAccelerationFieldCasing.java
+++ b/src/main/java/com/github/technus/tectech/thing/casing/TimeAccelerationFieldCasing.java
@@ -1,5 +1,7 @@
package com.github.technus.tectech.thing.casing;
+import static com.github.technus.tectech.thing.casing.GT_Block_CasingsTT.texturePage;
+
import com.github.technus.tectech.thing.CustomItemList;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -8,6 +10,7 @@ import gregtech.api.objects.GT_CopiedBlockTexture;
import gregtech.api.util.GT_LanguageManager;
import gregtech.common.blocks.GT_Block_Casings_Abstract;
import gregtech.common.blocks.GT_Material_Casings;
+import java.util.List;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
@@ -15,10 +18,6 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.IIcon;
import net.minecraft.world.IBlockAccess;
-import java.util.List;
-
-import static com.github.technus.tectech.thing.casing.GT_Block_CasingsTT.texturePage;
-
public class TimeAccelerationFieldCasing extends GT_Block_Casings_Abstract {
private static IIcon texture_tier_0;
@@ -27,16 +26,24 @@ public class TimeAccelerationFieldCasing extends GT_Block_Casings_Abstract {
public TimeAccelerationFieldCasing() {
super(GT_Item_CasingsBA0.class, "gt.time_acceleration_field_generator", GT_Material_Casings.INSTANCE);
for (byte b = 0; b < 16; b = (byte) (b + 1)) {
- Textures.BlockIcons.casingTexturePages[texturePage][b + START_INDEX] = new GT_CopiedBlockTexture(this, 6, b);
+ Textures.BlockIcons.casingTexturePages[texturePage][b + START_INDEX] =
+ new GT_CopiedBlockTexture(this, 6, b);
}
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".0.name", "Crude Time Dilation Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".1.name", "Primitive Time Dilation Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".2.name", "Stable Time Dilation Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".3.name", "Superb Time Dilation Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".4.name", "Resplendent Time Dilation Field Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".5.name", "Perfect Time Temporal Dilation Generator");
- GT_LanguageManager.addStringLocalization(getUnlocalizedName() + ".6.name", "Tipler Grade Time Dilation Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".0.name", "Crude Time Dilation Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".1.name", "Primitive Time Dilation Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".2.name", "Stable Time Dilation Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".3.name", "Superb Time Dilation Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".4.name", "Resplendent Time Dilation Field Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".5.name", "Perfect Time Temporal Dilation Generator");
+ GT_LanguageManager.addStringLocalization(
+ getUnlocalizedName() + ".6.name", "Tipler Grade Time Dilation Field Generator");
CustomItemList.TimeAccelerationFieldGeneratorTier0.set(new ItemStack(this, 1, 0));
CustomItemList.TimeAccelerationFieldGeneratorTier1.set(new ItemStack(this, 1, 1));
@@ -45,7 +52,6 @@ public class TimeAccelerationFieldCasing extends GT_Block_Casings_Abstract {
CustomItemList.TimeAccelerationFieldGeneratorTier4.set(new ItemStack(this, 1, 4));
CustomItemList.TimeAccelerationFieldGeneratorTier5.set(new ItemStack(this, 1, 5));
CustomItemList.TimeAccelerationFieldGeneratorTier6.set(new ItemStack(this, 1, 6));
-
}
@Override
@@ -74,6 +80,7 @@ public class TimeAccelerationFieldCasing extends GT_Block_Casings_Abstract {
return Textures.BlockIcons.MACHINE_CASING_SOLID_STEEL.getIcon();
}
}
+
@Override
@SideOnly(Side.CLIENT)
public IIcon getIcon(IBlockAccess aWorld, int xCoord, int yCoord, int zCoord, int aSide) {
diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java
index 4c02edf46e..dcc28e9578 100644
--- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java
+++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_EM_EyeOfHarmony.java
@@ -1,5 +1,14 @@
package com.github.technus.tectech.thing.metaTileEntity.multi;
+import static com.github.technus.tectech.thing.casing.GT_Block_CasingsTT.textureOffset;
+import static com.github.technus.tectech.thing.casing.GT_Block_CasingsTT.texturePage;
+import static com.github.technus.tectech.thing.casing.TT_Container_Casings.sBlockCasingsTT;
+import static com.gtnewhorizon.structurelib.structure.StructureUtility.*;
+import static gregtech.api.enums.GT_Values.AuthorColen;
+import static gregtech.api.util.GT_StructureUtility.ofHatchAdderOptional;
+import static java.lang.Math.*;
+import static net.minecraft.util.EnumChatFormatting.*;
+
import com.github.technus.tectech.recipe.EyeOfHarmonyRecipe;
import com.github.technus.tectech.recipe.EyeOfHarmonyRecipeStorage;
import com.github.technus.tectech.thing.casing.TT_Block_SpacetimeCompressionFieldGenerators;
@@ -26,6 +35,7 @@ import gregtech.api.util.GT_Multiblock_Tooltip_Builder;
import gregtech.api.util.GT_Utility;
import gregtech.common.tileentities.machines.GT_MetaTileEntity_Hatch_OutputBus_ME;
import gregtech.common.tileentities.machines.GT_MetaTileEntity_Hatch_Output_ME;
+import java.util.*;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
@@ -33,28 +43,18 @@ import net.minecraft.util.EnumChatFormatting;
import net.minecraftforge.fluids.FluidStack;
import org.apache.commons.lang3.tuple.Pair;
-import java.util.*;
-
-import static com.github.technus.tectech.thing.casing.GT_Block_CasingsTT.textureOffset;
-import static com.github.technus.tectech.thing.casing.GT_Block_CasingsTT.texturePage;
-import static com.github.technus.tectech.thing.casing.TT_Container_Casings.sBlockCasingsTT;
-import static com.gtnewhorizon.structurelib.structure.StructureUtility.*;
-import static gregtech.api.enums.GT_Values.AuthorColen;
-import static gregtech.api.util.GT_StructureUtility.ofHatchAdderOptional;
-import static java.lang.Math.*;
-import static net.minecraft.util.EnumChatFormatting.*;
-
@SuppressWarnings("SpellCheckingInspection")
-public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_MultiblockBase_EM implements IConstructable, IGlobalWirelessEnergy {
- //region variables
+public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_MultiblockBase_EM
+ implements IConstructable, IGlobalWirelessEnergy {
+ // region variables
private static Textures.BlockIcons.CustomIcon ScreenOFF;
private static Textures.BlockIcons.CustomIcon ScreenON;
private static EyeOfHarmonyRecipeStorage recipes;
- private int SpacetimeCompressionFieldMetadata = -1;
- private int TimeAccelerationFieldMetadata = -1;
- private int StabilisationFieldMetadata = -1;
+ private int spacetimeCompressionFieldMetadata = -1;
+ private int timeAccelerationFieldMetadata = -1;
+ private int stabilisationFieldMetadata = -1;
private String userUUID = "";
private String userName = "";
@@ -63,124 +63,1328 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
private final long[] computationStack = new long[computationTickCacheSize];
// Multiblock structure.
- private static final IStructureDefinition<GT_MetaTileEntity_EM_EyeOfHarmony> STRUCTURE_DEFINITION = IStructureDefinition
- .<GT_MetaTileEntity_EM_EyeOfHarmony>builder()
- .addShape("main", transpose(new String[][]{
- {" ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " C C ", " C C ", " C C ", " CCCCCCCCC ", " C C ", " CCCCCCCCC ", " C C ", " C C ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " "},
- {" ", " ", " ", " ", " ", " ", " ", " ", " ", " C C ", " C C ", " C C ", " C C ", " DDDDD ", " DDCDCDD ", " CCCCDCCDCCDCCCC ", " DDDDDDD ", " CCCCDCCDCCDCCCC ", " DDCDCDD ", " DDDDD ", " C C ", " C C ", " C C ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " "},
- {" ", " ", " ", " ", " ", " ", " ", " C C ", " C C ", " C C ", " D ", " D ", " DDDDDDD ", " DD DD ", " D EEE D ", " CCC D EAAAE D CCC ", " DDD EAAAE DDD ", " CCC D EAAAE D CCC ", " D EEE D ", " DD DD ", " DDDDDDD ", " D ", " D ", " C C ", " C C ", " C C ", " ", " ", " ", " ", " ", " ", " "},
- {" ", " ", " ", " ", " ", " ", " C C ", " C C ", " D ", " D ", " ", " ", " ", " ", " ", " CC CC ", " DD DD ", " CC CC ", " ", " ", " ", " ", " ", " D ", " D ", " C C ", " C C ", " ", " ", " ", " ", " ", " "},
- {" ", " ", " ", " ", " ", " C C ", " CCCCC ", " D ", " A ", " A ", " ", " ", " ", " ", " C C ", " CC CC ", " CDAA AADC ", " CC CC ", " C C ", " ", " ", " ", " ", " A ", " A ", " D ", " CCCCC ", " C C ", " ", " ", " ", " ", " "},
- {" ", " ", " ", " ", " C C ", " C C ", " D ", " SEEAEES ", " ", " ", " ", " ", " ", " S S ", " E E ", " CC E E CC ", " DA AD ", " CC E E CC ", " E E ", " S S ", " ", " ", " ", " ", " ", " SEEAEES ", " D ", " C C ", " C C ", " ", " ", " ", " "},
- {" ", " ", " ", " C C ", " CCCCC ", " D ", " A ", " ", " ", " ", " ", " ", " ", " ", " C C ", " CC CC ", " CDA ADC ", " CC CC ", " C C ", " ", " ", " ", " ", " ", " ", " ", " A ", " D ", " CCCCC ", " C C ", " ", " ", " "},
- {" ", " ", " C C ", " C C ", " D ", " SEEAEES ", " ", " ", " ", " ", " ", " ", " ", " S S ", " E E ", " CC E E CC ", " DA AD ", " CC E E CC ", " E E ", " S S ", " ", " ", " ", " ", " ", " ", " ", " SEEAEES ", " D ", " C C ", " C C ", " ", " "},
- {" ", " ", " C C ", " D ", " A ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " C C ", " DA AD ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " A ", " D ", " C C ", " ", " "},
- {" ", " C C ", " C C ", " D ", " A ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " CC CC ", " DA AD ", " CC CC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " A ", " D ", " C C ", " C C ", " "},
- {" ", " C C ", " D ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " C C ", " D D ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " D ", " C C ", " "},
- {" ", " C C ", " D ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " C C ", " D D ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " D ", " C C ", " "},
- {" CCCCCCC ", " C C ", " DDDDDDD ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " D D ", " D D ", "CCD DCC", " D D ", "CCD DCC", " D D ", " D D ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " DDDDDDD ", " C C ", " C C "},
- {" CCHHHHHCC ", " DDDDD ", " DD DD ", " ", " ", " S S ", " ", " S S ", " ", " ", " ", " ", " D D ", " D D ", " D D ", "CD DC", " D D ", "CD DC", " D D ", " D D ", " D D ", " ", " ", " ", " ", " S S ", " ", " S S ", " ", " ", " DD DD ", " DDDDD ", " C C "},
- {" CHHHHHHHC ", " DDCDCDD ", " D EEE D ", " ", " C C ", " E E ", " C C ", " E E ", " ", " ", " ", " ", " D D ", " D D ", " D D ", "CCE ECC", " DE ED ", "CCE ECC", " D D ", " D D ", " D D ", " ", " ", " ", " ", " E E ", " C C ", " E E ", " C C ", " ", " D EEE D ", " DDCDCDD ", " C C "},
- {" CHHFFFHHC ", " CCCCDCCDCCDCCCC ", " CCC D EAAAE D CCC ", " CC CC ", " CC CC ", " CC E E CC ", " CC CC ", " CC E E CC ", " C C ", " CC CC ", " C C ", " C C ", "CCD DCC", "CD DC", "CCE ECC", "CCA ACC", "CDA ADC", "CCA ACC", "CCE ECC", "CD DC", "CCD DCC", " C C ", " C C ", " CC CC ", " C C ", " CC E E CC ", " CC CC ", " CC E E CC ", " CC CC ", " CC CC ", " CCC D EAAAE D CCC ", " CCCCDCCDCCDCCCC ", " CCCCCCCCC "},
- {" CHHF~FHHC ", " DDDDDDD ", " DDD EAAAE DDD ", " DD DD ", " CDAA AADC ", " DA AD ", " CDA ADC ", " DA AD ", " DA AD ", " DA AD ", " D D ", " D D ", " D D ", " D D ", " DE ED ", "CDA ADC", " DA AD ", "CDA ADC", " DE ED ", " D D ", " D D ", " D D ", " D D ", " DA AD ", " DA AD ", " DA AD ", " CDA ADC ", " DA AD ", " CDAA AADC ", " DD DD ", " DDD EAAAE DDD ", " DDDDDDD ", " C C "},
- {" CHHFFFHHC ", " CCCCDCCDCCDCCCC ", " CCC D EAAAE D CCC ", " CC CC ", " CC CC ", " CC E E CC ", " CC CC ", " CC E E CC ", " C C ", " CC CC ", " C C ", " C C ", "CCD DCC", "CD DC", "CCE ECC", "CCA ACC", "CDA ADC", "CCA ACC", "CCE ECC", "CD DC", "CCD DCC", " C C ", " C C ", " CC CC ", " C C ", " CC E E CC ", " CC CC ", " CC E E CC ", " CC CC ", " CC CC ", " CCC D EAAAE D CCC ", " CCCCDCCDCCDCCCC ", " CCCCCCCCC "},
- {" CHHHHHHHC ", " DDCDCDD ", " D EEE D ", " ", " C C ", " E E ", " C C ", " E E ", " ", " ", " ", " ", " D D ", " D D ", " D D ", "CCE ECC", " DE ED ", "CCE ECC", " D D ", " D D ", " D D ", " ", " ", " ", " ", " E E ", " C C ", " E E ", " C C ", " ", " D EEE D ", " DDCDCDD ", " C C "},
- {" CCHHHHHCC ", " DDDDD ", " DD DD ", " ", " ", " S S ", " ", " S S ", " ", " ", " ", " ", " D D ", " D D ", " D D ", "CD DC", " D D ", "CD DC", " D D ", " D D ", " D D ", " ", " ", " ", " ", " S S ", " ", " S S ", " ", " ", " DD DD ", " DDDDD ", " C C "},
- {" CCCCCCC ", " C C ", " DDDDDDD ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " D D ", " D D ", "CCD DCC", " D D ", "CCD DCC", " D D ", " D D ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " DDDDDDD ", " C C ", " C C "},
- {" ", " C C ", " D ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " C C ", " D D ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " D ", " C C ", " "},
- {" ", " C C ", " D ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " C C ", " D D ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " D ", " C C ", " "},
- {" ", " C C ", " C C ", " D ", " A ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " CC CC ", " DA AD ", " CC CC ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " A ", " D ", " C C ", " C C ", " "},
- {" ", " ", " C C ", " D ", " A ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " C C ", " DA AD ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " A ", " D ", " C C ", " ", " "},
- {" ", " ", " C C ", " C C ", " D ", " SEEAEES ", " ", " ", " ", " ", " ", " ", " ", " S S ", " E E ", " CC E E CC ", " DA AD ", " CC E E CC ", " E E ", " S S ", " ", " ", " ", " ", " ", " ", " ", " SEEAEES ", " D ", " C C ", " C C ", " ", " "},
- {" ", " ", " ", " C C ", " CCCCC ", " D ", " A ", " ", " ", " ", " ", " ", " ", " ", " C C ", " CC CC ", " CDA ADC ", " CC CC ", " C C ", " ", " ", " ", " ", " ", " ", " ", " A ", " D ", " CCCCC ", " C C ", " ", " ", " "},
- {" ", " ", " ", " ", " C C ", " C C ", " D ", " SEEAEES ", " ", " ", " ", " ", " ", " S S ", " E E ", " CC E E CC ", " DA AD ", " CC E E CC ", " E E ", " S S ", " ", " ", " ", " ", " ", " SEEAEES ", " D ", " C C ", " C C ", " ", " ", " ", " "},
- {" ", " ", " ", " ", " ", " C C ", " CCCCC ", " D ", " A ", " A ", " ", " ", " ", " ", " C C ", " CC CC ", " CDAA AADC ", " CC CC ", " C C ", " ", " ", " ", " ", " A ", " A ", " D ", " CCCCC ", " C C ", " ", " ", " ", " ", " "},
- {" ", " ", " ", " ", " ", " ", " C C ", " C C ", " D ", " D ", " ", " ", " ", " ", " ", " CC CC ", " DD DD ", " CC CC ", " ", " ", " ", " ", " ", " D ", " D ", " C C ", " C C ", " ", " ", " ", " ", " ", " "},
- {" ", " ", " ", " ", " ", " ", " ", " C C ", " C C ", " C C ", " D ", " D ", " DDDDDDD ", " DD DD ", " D EEE D ", " CCC D EAAAE D CCC ", " DDD EAAAE DDD ", " CCC D EAAAE D CCC ", " D EEE D ", " DD DD ", " DDDDDDD ", " D ", " D ", " C C ", " C C ", " C C ", " ", " ", " ", " ", " ", " ", " "},
- {" ", " ", " ", " ", " ", " ", " ", " ", " ", " C C ", " C C ", " C C ", " C C ", " DDDDD ", " DDCDCDD ", " CCCCDCCDCCDCCCC ", " DDDDDDD ", " CCCCDCCDCCDCCCC ", " DDCDCDD ", " DDDDD ", " C C ", " C C ", " C C ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " "},
- {" ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " C C ", " C C ", " C C ", " CCCCCCCCC ", " C C ", " CCCCCCCCC ", " C C ", " C C ", " C C ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " ", " "}
+ private static final IStructureDefinition<GT_MetaTileEntity_EM_EyeOfHarmony> STRUCTURE_DEFINITION =
+ IStructureDefinition.<GT_MetaTileEntity_EM_EyeOfHarmony>builder()
+ .addShape("main", transpose(new String[][] {
+ {
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " CCCCCCCCC ",
+ " C C ",
+ " CCCCCCCCC ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " DDDDD ",
+ " DDCDCDD ",
+ " CCCCDCCDCCDCCCC ",
+ " DDDDDDD ",
+ " CCCCDCCDCCDCCCC ",
+ " DDCDCDD ",
+ " DDDDD ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " D ",
+ " D ",
+ " DDDDDDD ",
+ " DD DD ",
+ " D EEE D ",
+ " CCC D EAAAE D CCC ",
+ " DDD EAAAE DDD ",
+ " CCC D EAAAE D CCC ",
+ " D EEE D ",
+ " DD DD ",
+ " DDDDDDD ",
+ " D ",
+ " D ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " C C ",
+ " D ",
+ " D ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " CC CC ",
+ " DD DD ",
+ " CC CC ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " D ",
+ " D ",
+ " C C ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " CCCCC ",
+ " D ",
+ " A ",
+ " A ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " CC CC ",
+ " CDAA AADC ",
+ " CC CC ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " A ",
+ " A ",
+ " D ",
+ " CCCCC ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " C C ",
+ " D ",
+ " SEEAEES ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " S S ",
+ " E E ",
+ " CC E E CC ",
+ " DA AD ",
+ " CC E E CC ",
+ " E E ",
+ " S S ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " SEEAEES ",
+ " D ",
+ " C C ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " CCCCC ",
+ " D ",
+ " A ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " CC CC ",
+ " CDA ADC ",
+ " CC CC ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " A ",
+ " D ",
+ " CCCCC ",
+ " C C ",
+ " ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " C C ",
+ " C C ",
+ " D ",
+ " SEEAEES ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " S S ",
+ " E E ",
+ " CC E E CC ",
+ " DA AD ",
+ " CC E E CC ",
+ " E E ",
+ " S S ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " SEEAEES ",
+ " D ",
+ " C C ",
+ " C C ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " C C ",
+ " D ",
+ " A ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " DA AD ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " A ",
+ " D ",
+ " C C ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " C C ",
+ " C C ",
+ " D ",
+ " A ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " CC CC ",
+ " DA AD ",
+ " CC CC ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " A ",
+ " D ",
+ " C C ",
+ " C C ",
+ " "
+ },
+ {
+ " ",
+ " C C ",
+ " D ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " D D ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " D ",
+ " C C ",
+ " "
+ },
+ {
+ " ",
+ " C C ",
+ " D ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " D D ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " D ",
+ " C C ",
+ " "
+ },
+ {
+ " CCCCCCC ",
+ " C C ",
+ " DDDDDDD ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " D D ",
+ " D D ",
+ "CCD DCC",
+ " D D ",
+ "CCD DCC",
+ " D D ",
+ " D D ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " DDDDDDD ",
+ " C C ",
+ " C C "
+ },
+ {
+ " CCHHHHHCC ",
+ " DDDDD ",
+ " DD DD ",
+ " ",
+ " ",
+ " S S ",
+ " ",
+ " S S ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " D D ",
+ " D D ",
+ " D D ",
+ "CD DC",
+ " D D ",
+ "CD DC",
+ " D D ",
+ " D D ",
+ " D D ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " S S ",
+ " ",
+ " S S ",
+ " ",
+ " ",
+ " DD DD ",
+ " DDDDD ",
+ " C C "
+ },
+ {
+ " CHHHHHHHC ",
+ " DDCDCDD ",
+ " D EEE D ",
+ " ",
+ " C C ",
+ " E E ",
+ " C C ",
+ " E E ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " D D ",
+ " D D ",
+ " D D ",
+ "CCE ECC",
+ " DE ED ",
+ "CCE ECC",
+ " D D ",
+ " D D ",
+ " D D ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " E E ",
+ " C C ",
+ " E E ",
+ " C C ",
+ " ",
+ " D EEE D ",
+ " DDCDCDD ",
+ " C C "
+ },
+ {
+ " CHHFFFHHC ",
+ " CCCCDCCDCCDCCCC ",
+ " CCC D EAAAE D CCC ",
+ " CC CC ",
+ " CC CC ",
+ " CC E E CC ",
+ " CC CC ",
+ " CC E E CC ",
+ " C C ",
+ " CC CC ",
+ " C C ",
+ " C C ",
+ "CCD DCC",
+ "CD DC",
+ "CCE ECC",
+ "CCA ACC",
+ "CDA ADC",
+ "CCA ACC",
+ "CCE ECC",
+ "CD DC",
+ "CCD DCC",
+ " C C ",
+ " C C ",
+ " CC CC ",
+ " C C ",
+ " CC E E CC ",
+ " CC CC ",
+ " CC E E CC ",
+ " CC CC ",
+ " CC CC ",
+ " CCC D EAAAE D CCC ",
+ " CCCCDCCDCCDCCCC ",
+ " CCCCCCCCC "
+ },
+ {
+ " CHHF~FHHC ",
+ " DDDDDDD ",
+ " DDD EAAAE DDD ",
+ " DD DD ",
+ " CDAA AADC ",
+ " DA AD ",
+ " CDA ADC ",
+ " DA AD ",
+ " DA AD ",
+ " DA AD ",
+ " D D ",
+ " D D ",
+ " D D ",
+ " D D ",
+ " DE ED ",
+ "CDA ADC",
+ " DA AD ",
+ "CDA ADC",
+ " DE ED ",
+ " D D ",
+ " D D ",
+ " D D ",
+ " D D ",
+ " DA AD ",
+ " DA AD ",
+ " DA AD ",
+ " CDA ADC ",
+ " DA AD ",
+ " CDAA AADC ",
+ " DD DD ",
+ " DDD EAAAE DDD ",
+ " DDDDDDD ",
+ " C C "
+ },
+ {
+ " CHHFFFHHC ",
+ " CCCCDCCDCCDCCCC ",
+ " CCC D EAAAE D CCC ",
+ " CC CC ",
+ " CC CC ",
+ " CC E E CC ",
+ " CC CC ",
+ " CC E E CC ",
+ " C C ",
+ " CC CC ",
+ " C C ",
+ " C C ",
+ "CCD DCC",
+ "CD DC",
+ "CCE ECC",
+ "CCA ACC",
+ "CDA ADC",
+ "CCA ACC",
+ "CCE ECC",
+ "CD DC",
+ "CCD DCC",
+ " C C ",
+ " C C ",
+ " CC CC ",
+ " C C ",
+ " CC E E CC ",
+ " CC CC ",
+ " CC E E CC ",
+ " CC CC ",
+ " CC CC ",
+ " CCC D EAAAE D CCC ",
+ " CCCCDCCDCCDCCCC ",
+ " CCCCCCCCC "
+ },
+ {
+ " CHHHHHHHC ",
+ " DDCDCDD ",
+ " D EEE D ",
+ " ",
+ " C C ",
+ " E E ",
+ " C C ",
+ " E E ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " D D ",
+ " D D ",
+ " D D ",
+ "CCE ECC",
+ " DE ED ",
+ "CCE ECC",
+ " D D ",
+ " D D ",
+ " D D ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " E E ",
+ " C C ",
+ " E E ",
+ " C C ",
+ " ",
+ " D EEE D ",
+ " DDCDCDD ",
+ " C C "
+ },
+ {
+ " CCHHHHHCC ",
+ " DDDDD ",
+ " DD DD ",
+ " ",
+ " ",
+ " S S ",
+ " ",
+ " S S ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " D D ",
+ " D D ",
+ " D D ",
+ "CD DC",
+ " D D ",
+ "CD DC",
+ " D D ",
+ " D D ",
+ " D D ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " S S ",
+ " ",
+ " S S ",
+ " ",
+ " ",
+ " DD DD ",
+ " DDDDD ",
+ " C C "
+ },
+ {
+ " CCCCCCC ",
+ " C C ",
+ " DDDDDDD ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " D D ",
+ " D D ",
+ "CCD DCC",
+ " D D ",
+ "CCD DCC",
+ " D D ",
+ " D D ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " DDDDDDD ",
+ " C C ",
+ " C C "
+ },
+ {
+ " ",
+ " C C ",
+ " D ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " D D ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " D ",
+ " C C ",
+ " "
+ },
+ {
+ " ",
+ " C C ",
+ " D ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " D D ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " D ",
+ " C C ",
+ " "
+ },
+ {
+ " ",
+ " C C ",
+ " C C ",
+ " D ",
+ " A ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " CC CC ",
+ " DA AD ",
+ " CC CC ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " A ",
+ " D ",
+ " C C ",
+ " C C ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " C C ",
+ " D ",
+ " A ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " DA AD ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " A ",
+ " D ",
+ " C C ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " C C ",
+ " C C ",
+ " D ",
+ " SEEAEES ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " S S ",
+ " E E ",
+ " CC E E CC ",
+ " DA AD ",
+ " CC E E CC ",
+ " E E ",
+ " S S ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " SEEAEES ",
+ " D ",
+ " C C ",
+ " C C ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " CCCCC ",
+ " D ",
+ " A ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " CC CC ",
+ " CDA ADC ",
+ " CC CC ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " A ",
+ " D ",
+ " CCCCC ",
+ " C C ",
+ " ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " C C ",
+ " D ",
+ " SEEAEES ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " S S ",
+ " E E ",
+ " CC E E CC ",
+ " DA AD ",
+ " CC E E CC ",
+ " E E ",
+ " S S ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " SEEAEES ",
+ " D ",
+ " C C ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " CCCCC ",
+ " D ",
+ " A ",
+ " A ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " CC CC ",
+ " CDAA AADC ",
+ " CC CC ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " A ",
+ " A ",
+ " D ",
+ " CCCCC ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " C C ",
+ " D ",
+ " D ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " CC CC ",
+ " DD DD ",
+ " CC CC ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " D ",
+ " D ",
+ " C C ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " D ",
+ " D ",
+ " DDDDDDD ",
+ " DD DD ",
+ " D EEE D ",
+ " CCC D EAAAE D CCC ",
+ " DDD EAAAE DDD ",
+ " CCC D EAAAE D CCC ",
+ " D EEE D ",
+ " DD DD ",
+ " DDDDDDD ",
+ " D ",
+ " D ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " DDDDD ",
+ " DDCDCDD ",
+ " CCCCDCCDCCDCCCC ",
+ " DDDDDDD ",
+ " CCCCDCCDCCDCCCC ",
+ " DDCDCDD ",
+ " DDDDD ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " "
+ },
+ {
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " CCCCCCCCC ",
+ " C C ",
+ " CCCCCCCCC ",
+ " C C ",
+ " C C ",
+ " C C ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " ",
+ " "
+ }
}))
- .addElement('A', ofBlocksTiered(
- (block, meta) -> block == TT_Block_SpacetimeCompressionFieldGenerators.SpacetimeCompressionFieldGenerators ? meta : -1,
- ImmutableList.of(
- Pair.of(TT_Block_SpacetimeCompressionFieldGenerators.SpacetimeCompressionFieldGenerators, 0),
- Pair.of(TT_Block_SpacetimeCompressionFieldGenerators.SpacetimeCompressionFieldGenerators, 1),
- Pair.of(TT_Block_SpacetimeCompressionFieldGenerators.SpacetimeCompressionFieldGenerators, 2),
- Pair.of(TT_Block_SpacetimeCompressionFieldGenerators.SpacetimeCompressionFieldGenerators, 3),
- Pair.of(TT_Block_SpacetimeCompressionFieldGenerators.SpacetimeCompressionFieldGenerators, 4),
- Pair.of(TT_Block_SpacetimeCompressionFieldGenerators.SpacetimeCompressionFieldGenerators, 5),
- Pair.of(TT_Block_SpacetimeCompressionFieldGenerators.SpacetimeCompressionFieldGenerators, 6)
- ),
- -1,
- (t, meta) -> t.SpacetimeCompressionFieldMetadata = meta,
- t -> t.SpacetimeCompressionFieldMetadata
- ))
- .addElement('S', ofBlocksTiered(
- (block, meta) -> block == TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators ? meta : -1,
- ImmutableList.of(
- Pair.of(TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators, 0),
- Pair.of(TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators, 1),
- Pair.of(TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators, 2),
- Pair.of(TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators, 3),
- Pair.of(TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators, 4),
- Pair.of(TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators, 5),
- Pair.of(TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators, 6)
- ),
- -1,
- (t, meta) -> t.StabilisationFieldMetadata = meta,
- t -> t.StabilisationFieldMetadata
- ))
- .addElement('B', ofBlock(sBlockCasingsTT, 11))
- .addElement('C', ofBlock(sBlockCasingsTT, 12))
- .addElement('D', ofBlock(sBlockCasingsTT, 13))
- .addElement('E', ofBlocksTiered(
- (block, meta) -> block == TT_Block_TimeAccelerationFieldGenerators.TimeAccelerationFieldGenerator ? meta : -1,
- ImmutableList.of(
- Pair.of(TT_Block_TimeAccelerationFieldGenerators.TimeAccelerationFieldGenerator, 0),
- Pair.of(TT_Block_TimeAccelerationFieldGenerators.TimeAccelerationFieldGenerator, 1),
- Pair.of(TT_Block_TimeAccelerationFieldGenerators.TimeAccelerationFieldGenerator, 2),
- Pair.of(TT_Block_TimeAccelerationFieldGenerators.TimeAccelerationFieldGenerator, 3),
- Pair.of(TT_Block_TimeAccelerationFieldGenerators.TimeAccelerationFieldGenerator, 4),
- Pair.of(TT_Block_TimeAccelerationFieldGenerators.TimeAccelerationFieldGenerator, 5),
- Pair.of(TT_Block_TimeAccelerationFieldGenerators.TimeAccelerationFieldGenerator, 6)
- ),
- -1,
- (t, meta) -> t.TimeAccelerationFieldMetadata = meta,
- t -> t.TimeAccelerationFieldMetadata
- ))
- .addElement('H', ofHatchAdderOptional(GT_MetaTileEntity_EM_EyeOfHarmony::addClassicToMachineList, textureOffset, 1, sBlockCasingsTT, 0))
- .addElement('F', ofHatchAdderOptional(GT_MetaTileEntity_EM_EyeOfHarmony::addElementalToMachineList, textureOffset + 4, 2, sBlockCasingsTT, 4))
- .build();
-
-
- private double hydrogen_overflow_probability_adjustment;
- private double helium_overflow_probability_adjustment;
+ .addElement(
+ 'A',
+ ofBlocksTiered(
+ (block, meta) -> block
+ == TT_Block_SpacetimeCompressionFieldGenerators
+ .SpacetimeCompressionFieldGenerators
+ ? meta
+ : -1,
+ ImmutableList.of(
+ Pair.of(
+ TT_Block_SpacetimeCompressionFieldGenerators
+ .SpacetimeCompressionFieldGenerators,
+ 0),
+ Pair.of(
+ TT_Block_SpacetimeCompressionFieldGenerators
+ .SpacetimeCompressionFieldGenerators,
+ 1),
+ Pair.of(
+ TT_Block_SpacetimeCompressionFieldGenerators
+ .SpacetimeCompressionFieldGenerators,
+ 2),
+ Pair.of(
+ TT_Block_SpacetimeCompressionFieldGenerators
+ .SpacetimeCompressionFieldGenerators,
+ 3),
+ Pair.of(
+ TT_Block_SpacetimeCompressionFieldGenerators
+ .SpacetimeCompressionFieldGenerators,
+ 4),
+ Pair.of(
+ TT_Block_SpacetimeCompressionFieldGenerators
+ .SpacetimeCompressionFieldGenerators,
+ 5),
+ Pair.of(
+ TT_Block_SpacetimeCompressionFieldGenerators
+ .SpacetimeCompressionFieldGenerators,
+ 6)),
+ -1,
+ (t, meta) -> t.spacetimeCompressionFieldMetadata = meta,
+ t -> t.spacetimeCompressionFieldMetadata))
+ .addElement(
+ 'S',
+ ofBlocksTiered(
+ (block, meta) ->
+ block == TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators
+ ? meta
+ : -1,
+ ImmutableList.of(
+ Pair.of(
+ TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators,
+ 0),
+ Pair.of(
+ TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators,
+ 1),
+ Pair.of(
+ TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators,
+ 2),
+ Pair.of(
+ TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators,
+ 3),
+ Pair.of(
+ TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators,
+ 4),
+ Pair.of(
+ TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators,
+ 5),
+ Pair.of(
+ TT_Block_StabilisationFieldGenerators.StabilisationFieldGenerators,
+ 6)),
+ -1,
+ (t, meta) -> t.stabilisationFieldMetadata = meta,
+ t -> t.stabilisationFieldMetadata))
+ .addElement('B', ofBlock(sBlockCasingsTT, 11))
+ .addElement('C', ofBlock(sBlockCasingsTT, 12))
+ .addElement('D', ofBlock(sBlockCasingsTT, 13))
+ .addElement(
+ 'E',
+ ofBlocksTiered(
+ (block, meta) -> block
+ == TT_Block_TimeAccelerationFieldGenerators
+ .TimeAccelerationFieldGenerator
+ ? meta
+ : -1,
+ ImmutableList.of(
+ Pair.of(
+ TT_Block_TimeAccelerationFieldGenerators
+ .TimeAccelerationFieldGenerator,
+ 0),
+ Pair.of(
+ TT_Block_TimeAccelerationFieldGenerators
+ .TimeAccelerationFieldGenerator,
+ 1),
+ Pair.of(
+ TT_Block_TimeAccelerationFieldGenerators
+ .TimeAccelerationFieldGenerator,
+ 2),
+ Pair.of(
+ TT_Block_TimeAccelerationFieldGenerators
+ .TimeAccelerationFieldGenerator,
+ 3),
+ Pair.of(
+ TT_Block_TimeAccelerationFieldGenerators
+ .TimeAccelerationFieldGenerator,
+ 4),
+ Pair.of(
+ TT_Block_TimeAccelerationFieldGenerators
+ .TimeAccelerationFieldGenerator,
+ 5),
+ Pair.of(
+ TT_Block_TimeAccelerationFieldGenerators
+ .TimeAccelerationFieldGenerator,
+ 6)),
+ -1,
+ (t, meta) -> t.timeAccelerationFieldMetadata = meta,
+ t -> t.timeAccelerationFieldMetadata))
+ .addElement(
+ 'H',
+ ofHatchAdderOptional(
+ GT_MetaTileEntity_EM_EyeOfHarmony::addClassicToMachineList,
+ textureOffset,
+ 1,
+ sBlockCasingsTT,
+ 0))
+ .addElement(
+ 'F',
+ ofHatchAdderOptional(
+ GT_MetaTileEntity_EM_EyeOfHarmony::addElementalToMachineList,
+ textureOffset + 4,
+ 2,
+ sBlockCasingsTT,
+ 4))
+ .build();
+
+ private double hydrogenOverflowProbabilityAdjustment;
+ private double heliumOverflowProbabilityAdjustment;
// Maximum additional chance of recipe success that can be obtained from adding computation.
private static final double max_percentage_chance_gain_from_computation_per_second = 0.3;
- private static final long ticks_between_hatch_drain = 20;
+ // todo: make higher on final release.
+ private static final long ticksBetweenHatchDrain = 20;
- List<Pair<ItemStack, Long>> output_items;
+ List<Pair<ItemStack, Long>> outputItems;
- private void calculateHydrogenHeliumInputExcessValues(long hydrogen_recipe_requirement, long helium_recipe_requirement) {
+ private void calculateHydrogenHeliumInputExcessValues(
+ long hydrogen_recipe_requirement, long helium_recipe_requirement) {
long hydrogen_stored = validFluidMap.get(Materials.Hydrogen.getGas(1L));
- long helium_stored = validFluidMap.get(Materials.Helium.getGas(1L));
+ long helium_stored = validFluidMap.get(Materials.Helium.getGas(1L));
double hydrogen_excess_percentage = abs(1 - hydrogen_stored / hydrogen_recipe_requirement);
double helium_excess_percentage = abs(1 - helium_stored / helium_recipe_requirement);
- hydrogen_overflow_probability_adjustment = 1 - exp(- pow(30 * hydrogen_excess_percentage, 2));
- helium_overflow_probability_adjustment = 1 - exp(- pow(30 * helium_excess_percentage, 2));
+ hydrogenOverflowProbabilityAdjustment = 1 - exp(-pow(30 * hydrogen_excess_percentage, 2));
+ heliumOverflowProbabilityAdjustment = 1 - exp(-pow(30 * helium_excess_percentage, 2));
}
- private double recipeChanceCalculator(double base_recipe_chance) {
- double chance = (base_recipe_chance
- - TimeAccelerationFieldMetadata * 0.1
- + StabilisationFieldMetadata * 0.05
- - hydrogen_overflow_probability_adjustment
- - helium_overflow_probability_adjustment
+ private double recipeChanceCalculator() {
+ double chance = (currentRecipe.getBaseRecipeSuccessChance()
+ - timeAccelerationFieldMetadata * 0.1
+ + stabilisationFieldMetadata * 0.05
+ - hydrogenOverflowProbabilityAdjustment
+ - heliumOverflowProbabilityAdjustment
+ max_percentage_chance_gain_from_computation_per_second * (1 - exp(-10e-5 * getComputation())));
return clamp(chance, 0.0, 1.0);
@@ -192,9 +1396,9 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
private double recipeYieldCalculator() {
double yield = 1
- - hydrogen_overflow_probability_adjustment
- - helium_overflow_probability_adjustment
- - StabilisationFieldMetadata * 0.05;
+ - hydrogenOverflowProbabilityAdjustment
+ - heliumOverflowProbabilityAdjustment
+ - stabilisationFieldMetadata * 0.05;
return clamp(yield, 0.0, 1.0);
}
@@ -203,8 +1407,9 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
double double_recipe_time = (double) recipe_time;
- long spacetime_casing_difference = (recipe_spacetime_casing_required - SpacetimeCompressionFieldMetadata);
- return (long) (double_recipe_time * pow(2, -TimeAccelerationFieldMetadata) * pow(0.97, spacetime_casing_difference));
+ long spacetime_casing_difference = (recipe_spacetime_casing_required - spacetimeCompressionFieldMetadata);
+ return (long)
+ (double_recipe_time * pow(2, -timeAccelerationFieldMetadata) * pow(0.97, spacetime_casing_difference));
}
@Override
@@ -301,20 +1506,28 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
.addInfo(BLUE + "Spacetime Compression Field Generator:")
.addInfo("- The tier of this block determines what recipes can be run. If the multiblocks")
.addInfo(" spacetime compression field block exceeds the requirements of the recipe it")
- .addInfo(" will decrease the processing time by " + RED + "3%" + GRAY + " per tier over the requirement. This")
+ .addInfo(" will decrease the processing time by " + RED + "3%" + GRAY
+ + " per tier over the requirement. This")
.addInfo(" is multiplicative.")
.addInfo(BLUE + "Time Dilation Field Generator:")
- .addInfo("- Decreases the time required by a recipe by a factor of " + RED + "2" + GRAY + " per tier of block.")
- .addInfo(" Decreases the probability of a recipe succeeding by " + RED + "10%" + GRAY + " per tier (additive)")
+ .addInfo("- Decreases the time required by a recipe by a factor of " + RED + "2" + GRAY
+ + " per tier of block.")
+ .addInfo(" Decreases the probability of a recipe succeeding by " + RED + "10%" + GRAY
+ + " per tier (additive)")
.addInfo(BLUE + "Stabilisation Field Generator:")
- .addInfo("- Increases the probability of a recipe succeeding by " + RED + "5%" + GRAY + " per tier (additive).")
+ .addInfo("- Increases the probability of a recipe succeeding by " + RED + "5%" + GRAY
+ + " per tier (additive).")
.addInfo(" Decreases the yield of a recipe by " + RED + "5%" + GRAY + " per tier (additive). ")
.addInfo(GOLD + "--------------------------------------------------------------------------------")
- .addInfo("Computation/s provided to the multiblock can increase the chance by up to " + RED + GT_Utility.formatNumbers(max_percentage_chance_gain_from_computation_per_second * 100) + GRAY + "%.")
- .addInfo("The associated formula is " + GREEN + "additional_chance = 0.3 * exp(10^(-5) * computation_per_second)" + GRAY + ".")
+ .addInfo("Computation/s provided to the multiblock can increase the chance by up to " + RED
+ + GT_Utility.formatNumbers(max_percentage_chance_gain_from_computation_per_second * 100) + GRAY
+ + "%.")
+ .addInfo("The associated formula is " + GREEN
+ + "additional_chance = 0.3 * exp(10^(-5) * computation_per_second)" + GRAY + ".")
.addInfo(GOLD + "--------------------------------------------------------------------------------")
.addInfo("Going over a recipe requirement on hydrogen or helium has a penalty on yield and recipe")
- .addInfo("chance. All stored hydrogen and helium is consumed during a craft. The associated formulas are:")
+ .addInfo(
+ "chance. All stored hydrogen and helium is consumed during a craft. The associated formulas are:")
.addInfo(GREEN + "percentage_overflow = abs(1 - fluid_stored/recipe_requirement)")
.addInfo(GREEN + "adjustment_value = 1 - exp(-(30 * percentage_overflow)^2)")
.addInfo("The value of adjustment_value is then subtracted from the total yield and recipe chance.")
@@ -324,26 +1537,37 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
.addInfo("by the yield calculated.")
.addInfo(GOLD + "--------------------------------------------------------------------------------")
.addInfo("This multiblock can only output to ME output busses/hatches. If no space in the network")
- .addInfo("is avaliable the items/fluids will be " + UNDERLINE + DARK_RED + "voided" + RESET + GRAY + ".")
+ .addInfo(
+ "is avaliable the items/fluids will be " + UNDERLINE + DARK_RED + "voided" + RESET + GRAY + ".")
.addInfo(GOLD + "--------------------------------------------------------------------------------")
.addInfo("Recipes that fail will return a random amount of the fluid back from the recipe and some")
.addInfo("exotic material that rejects conventional physics.")
.addSeparator()
.addStructureInfo("Eye of Harmony structure is too complex! See schematic for details.")
- .addStructureInfo(EnumChatFormatting.GOLD + "888" + EnumChatFormatting.GRAY + " Ultimate Molecular Casing.")
- .addStructureInfo(EnumChatFormatting.GOLD + "534" + EnumChatFormatting.GRAY + " Ultimate Advanced Molecular Casing.")
- .addStructureInfo(EnumChatFormatting.GOLD + "680" + EnumChatFormatting.GRAY + " Time Dilation Field Generator.")
- .addStructureInfo(EnumChatFormatting.GOLD + "48" + EnumChatFormatting.GRAY + " Stabilisation Field Generator.")
- .addStructureInfo(EnumChatFormatting.GOLD + "138" + EnumChatFormatting.GRAY + " Spacetime Compression Field Generator.")
+ .addStructureInfo(
+ EnumChatFormatting.GOLD + "888" + EnumChatFormatting.GRAY + " Ultimate Molecular Casing.")
+ .addStructureInfo(EnumChatFormatting.GOLD + "534" + EnumChatFormatting.GRAY
+ + " Ultimate Advanced Molecular Casing.")
+ .addStructureInfo(
+ EnumChatFormatting.GOLD + "680" + EnumChatFormatting.GRAY + " Time Dilation Field Generator.")
+ .addStructureInfo(
+ EnumChatFormatting.GOLD + "48" + EnumChatFormatting.GRAY + " Stabilisation Field Generator.")
+ .addStructureInfo(EnumChatFormatting.GOLD + "138" + EnumChatFormatting.GRAY
+ + " Spacetime Compression Field Generator.")
.addStructureInfo("--------------------------------------------")
- .addStructureInfo("Requires " + EnumChatFormatting.GOLD + 1 + EnumChatFormatting.GRAY + " maintenance hatch.")
- .addStructureInfo("Requires " + EnumChatFormatting.GOLD + 2 + EnumChatFormatting.GRAY + " input hatches.")
- .addStructureInfo("Requires " + EnumChatFormatting.GOLD + 1 + EnumChatFormatting.GRAY + "+ ME output hatch.")
- .addStructureInfo("Requires " + EnumChatFormatting.GOLD + 1 + EnumChatFormatting.GRAY + " input busses.")
- .addStructureInfo("Requires " + EnumChatFormatting.GOLD + 1 + EnumChatFormatting.GRAY + " ME output bus.")
+ .addStructureInfo(
+ "Requires " + EnumChatFormatting.GOLD + 1 + EnumChatFormatting.GRAY + " maintenance hatch.")
+ .addStructureInfo(
+ "Requires " + EnumChatFormatting.GOLD + 2 + EnumChatFormatting.GRAY + " input hatches.")
+ .addStructureInfo(
+ "Requires " + EnumChatFormatting.GOLD + 1 + EnumChatFormatting.GRAY + "+ ME output hatch.")
+ .addStructureInfo(
+ "Requires " + EnumChatFormatting.GOLD + 1 + EnumChatFormatting.GRAY + " input busses.")
+ .addStructureInfo(
+ "Requires " + EnumChatFormatting.GOLD + 1 + EnumChatFormatting.GRAY + " ME output bus.")
.addStructureInfo("--------------------------------------------")
.beginStructureBlock(33, 33, 33, false)
- .toolTipFinisher( AuthorColen.substring(8) + EnumChatFormatting.GRAY + "&" + CommonValues.TEC_MARK_EM);
+ .toolTipFinisher(AuthorColen.substring(8) + EnumChatFormatting.GRAY + "&" + CommonValues.TEC_MARK_EM);
return tt;
}
@@ -356,54 +1580,63 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
}
@Override
- public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
+ public ITexture[] getTexture(
+ IGregTechTileEntity aBaseMetaTileEntity,
+ byte aSide,
+ byte aFacing,
+ byte aColorIndex,
+ boolean aActive,
+ boolean aRedstone) {
if (aSide == aFacing) {
- return new ITexture[]{Textures.BlockIcons.casingTexturePages[texturePage][12], new TT_RenderedExtendedFacingTexture(aActive ? ScreenON : ScreenOFF)};
+ return new ITexture[] {
+ Textures.BlockIcons.casingTexturePages[texturePage][12],
+ new TT_RenderedExtendedFacingTexture(aActive ? ScreenON : ScreenOFF)
+ };
}
- return new ITexture[]{Textures.BlockIcons.casingTexturePages[texturePage][12]};
+ return new ITexture[] {Textures.BlockIcons.casingTexturePages[texturePage][12]};
}
@Override
public void construct(ItemStack stackSize, boolean hintsOnly) {
- SpacetimeCompressionFieldMetadata = -1;
- TimeAccelerationFieldMetadata = -1;
- StabilisationFieldMetadata = -1;
+ spacetimeCompressionFieldMetadata = -1;
+ timeAccelerationFieldMetadata = -1;
+ stabilisationFieldMetadata = -1;
structureBuild_EM("main", 16, 16, 0, stackSize, hintsOnly);
}
- private final Map<FluidStack, Long> validFluidMap = new HashMap<FluidStack, Long>() {{
+ private final Map<FluidStack, Long> validFluidMap = new HashMap<FluidStack, Long>() {{
put(Materials.Hydrogen.getGas(1), 0L);
put(Materials.Helium.getGas(1), 0L);
}};
private void drainFluidFromHatchesAndStoreInternally() {
- for (GT_MetaTileEntity_Hatch_Input input_hatch : mInputHatches) {
- FluidStack fluid_in_hatch = input_hatch.getFluid();
+ for (GT_MetaTileEntity_Hatch_Input inputHatch : mInputHatches) {
+ FluidStack fluidInHatch = inputHatch.getFluid();
- if (fluid_in_hatch == null) {
+ if (fluidInHatch == null) {
continue;
}
// Iterate over valid fluids and store them in a hashmap.
- for (FluidStack valid_fluid : validFluidMap.keySet()) {
- if (fluid_in_hatch.isFluidEqual(valid_fluid)) {
- validFluidMap.put(valid_fluid, validFluidMap.get(valid_fluid) + (long) fluid_in_hatch.amount);
- input_hatch.setFillableStack(null);
+ for (FluidStack validFluid : validFluidMap.keySet()) {
+ if (fluidInHatch.isFluidEqual(validFluid)) {
+ validFluidMap.put(validFluid, validFluidMap.get(validFluid) + (long) fluidInHatch.amount);
+ inputHatch.setFillableStack(null);
}
}
}
}
- EyeOfHarmonyRecipe currentRecipeObject;
+ private EyeOfHarmonyRecipe currentRecipe;
@Override
public boolean checkRecipe_EM(ItemStack aStack) {
- currentRecipeObject = recipes.recipeLookUp(aStack);
- if (processRecipe(currentRecipeObject)) {
+ currentRecipe = recipes.recipeLookUp(aStack);
+ if (processRecipe(currentRecipe)) {
return true;
}
- currentRecipeObject = null;
+ currentRecipe = null;
return false;
}
@@ -417,12 +1650,12 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
public boolean processRecipe(EyeOfHarmonyRecipe recipeObject) {
- if ((getHydrogenStored() < currentRecipeObject.getHydrogenRequirement()) & (getHeliumStored() < currentRecipeObject.getHeliumRequirement())) {
+ if ((getHydrogenStored() < currentRecipe.getHydrogenRequirement()) && (getHeliumStored() < currentRecipe.getHeliumRequirement())) {
return false;
}
// Check tier of spacetime compression blocks is high enough.
- if (SpacetimeCompressionFieldMetadata <= recipeObject.getSpacetimeCasingTierRequired()) {
+ if (spacetimeCompressionFieldMetadata <= recipeObject.getSpacetimeCasingTierRequired()) {
return false;
}
@@ -431,14 +1664,19 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
return false;
}
- mMaxProgresstime = (int) Math.max(1, recipeProcessTimeCalculator(recipeObject.getRecipeTime(), recipeObject.getSpacetimeCasingTierRequired()));
+ mMaxProgresstime = (int) Math.max(
+ 1,
+ recipeProcessTimeCalculator(
+ recipeObject.getRecipeTime(), recipeObject.getSpacetimeCasingTierRequired()));
+
+ calculateHydrogenHeliumInputExcessValues(
+ recipeObject.getHydrogenRequirement(), recipeObject.getHeliumRequirement());
- calculateHydrogenHeliumInputExcessValues(recipeObject.getHydrogenRequirement(), recipeObject.getHeliumRequirement());
// DEBUG ! DELETE THESE TWO LINES:
- hydrogen_overflow_probability_adjustment = 0;
- helium_overflow_probability_adjustment = 0;
+ hydrogenOverflowProbabilityAdjustment = 0;
+ heliumOverflowProbabilityAdjustment = 0;
- success_chance = recipeChanceCalculator(recipeObject.getBaseRecipeSuccessChance());
+ successChance = recipeChanceCalculator();
// Determine EU recipe output.
euOutput = recipeObject.getEUOutput();
@@ -452,28 +1690,30 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
double yield = recipeYieldCalculator();
- List<Pair<ItemStack, Long>> tmp_items_output = new ArrayList<>();
- FluidStack[] tmp_fluids_output = recipeObject.getOutputFluids().clone();
+ List<Pair<ItemStack, Long>> tmpItemsOutput = new ArrayList<>();
+ FluidStack[] tmpFluidsOutput = recipeObject.getOutputFluids().clone();
- // Iterate over item output list and apply yield values.
- for (Pair<ItemStack, Long> pair : recipeObject.getOutputItems()) {
- tmp_items_output.add(Pair.of(pair.getLeft(), (long) (pair.getRight() * yield)));
- }
+ if (yield != 1.0) {
+ // Iterate over item output list and apply yield values.
+ for (Pair<ItemStack, Long> pair : recipeObject.getOutputItems()) {
+ tmpItemsOutput.add(Pair.of(pair.getLeft(), (long) (pair.getRight() * yield)));
+ }
- // Iterate over fluid output list and apply yield values.
- for (FluidStack fluidStack : tmp_fluids_output) {
- fluidStack.amount *= yield;
+ // Iterate over fluid output list and apply yield values.
+ for (FluidStack fluidStack : tmpFluidsOutput) {
+ fluidStack.amount *= yield;
+ }
}
- output_items = tmp_items_output;
- mOutputFluids = tmp_fluids_output;
+ outputItems = tmpItemsOutput;
+ mOutputFluids = tmpFluidsOutput;
updateSlots();
recipeRunning = true;
return true;
}
- private double success_chance;
+ private double successChance;
private void outputFailedChance() {}
@@ -487,7 +1727,7 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
recipeRunning = false;
eRequiredData = 0L;
- if (success_chance > random()) {
+ if (successChance > random()) {
outputFailedChance();
return;
}
@@ -495,7 +1735,7 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
addEUToGlobalEnergyMap(userUUID, euOutput);
euOutput = 0;
- for (Pair<ItemStack, Long> itemPair : output_items) {
+ for (Pair<ItemStack, Long> itemPair : outputItems) {
outputItemToAENetwork(itemPair.getLeft(), itemPair.getRight());
}
@@ -504,8 +1744,8 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
private void pushComputation() {
// Add computation to finite "stack".
- for (int i = computationTickCacheSize - 1 ; i > 2; i--) {
- computationStack[i-1] = computationStack[i];
+ for (int i = computationTickCacheSize - 1; i > 2; i--) {
+ computationStack[i - 1] = computationStack[i];
}
computationStack[0] = eAvailableData;
}
@@ -529,14 +1769,14 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
pushComputation();
if (!recipeRunning) {
- if ((aTick % ticks_between_hatch_drain) == 0) {
+ if ((aTick % ticksBetweenHatchDrain) == 0) {
drainFluidFromHatchesAndStoreInternally();
}
}
}
private boolean recipeRunning = false;
- private final static int computationTickCacheSize = 5;
+ private static final int computationTickCacheSize = 5;
private long getComputation() {
return max(computationStack);
@@ -546,7 +1786,9 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
long max = array[0];
for (long i : array) {
- if (i > max) { max = i; }
+ if (i > max) {
+ max = i;
+ }
}
return max;
@@ -581,12 +1823,12 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
public String[] getInfoData() {
ArrayList<String> str = new ArrayList<>(Arrays.asList(super.getInfoData()));
str.add(GOLD + "---------------- Control Block Statistics ----------------");
- str.add("Spacetime Compression Field Grade: " + BLUE + SpacetimeCompressionFieldMetadata);
- str.add("Time Dilation Field Grade: " + BLUE + TimeAccelerationFieldMetadata);
- str.add("Stabilisation Field Grade: " + BLUE + StabilisationFieldMetadata);
+ str.add("Spacetime Compression Field Grade: " + BLUE + spacetimeCompressionFieldMetadata);
+ str.add("Time Dilation Field Grade: " + BLUE + timeAccelerationFieldMetadata);
+ str.add("Stabilisation Field Grade: " + BLUE + stabilisationFieldMetadata);
str.add(GOLD + "----------------- Internal Fluids Stored ----------------");
- validFluidMap.forEach((key, value) -> str.add(BLUE + key.getLocalizedName() + RESET +
- " : " + RED + GT_Utility.formatNumbers(value)));
+ validFluidMap.forEach((key, value) ->
+ str.add(BLUE + key.getLocalizedName() + RESET + " : " + RED + GT_Utility.formatNumbers(value)));
str.add(GOLD + "-----------------------------------------------------");
return str.toArray(new String[0]);
}
@@ -610,7 +1852,10 @@ public class GT_MetaTileEntity_EM_EyeOfHarmony extends GT_MetaTileEntity_Multibl
public void loadNBTData(final NBTTagCompound aNBT) {
// Load the quantity of fluid stored inside the controller.
- validFluidMap.forEach((key, value) -> validFluidMap.put(key, aNBT.getLong("stored." + key.getUnlocalizedName())));
+ validFluidMap.forEach(
+ (key, value) -> validFluidMap.put(key, aNBT.getLong("stored." + key.getUnlocalizedName())));
+
+ // Load other stuff from NBT.
recipeRunning = aNBT.getBoolean("eye_of_harmony_recipeRunning");
super.loadNBTData(aNBT);