aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/GoodGenerator/CrossMod
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/GoodGenerator/CrossMod')
-rw-r--r--src/main/java/GoodGenerator/CrossMod/NEI/IMCForNEI.java1
-rw-r--r--src/main/java/GoodGenerator/CrossMod/NEI/NEI_Config.java5
-rw-r--r--src/main/java/GoodGenerator/CrossMod/Thaumcraft/LargeEssentiaEnergyData.java124
-rw-r--r--src/main/java/GoodGenerator/CrossMod/Thaumcraft/Research.java481
4 files changed, 592 insertions, 19 deletions
diff --git a/src/main/java/GoodGenerator/CrossMod/NEI/IMCForNEI.java b/src/main/java/GoodGenerator/CrossMod/NEI/IMCForNEI.java
index 81f0249a7e..e4514df282 100644
--- a/src/main/java/GoodGenerator/CrossMod/NEI/IMCForNEI.java
+++ b/src/main/java/GoodGenerator/CrossMod/NEI/IMCForNEI.java
@@ -19,5 +19,6 @@ public class IMCForNEI {
aNBT.setInteger("handlerHeight", 135);
aNBT.setInteger("handlerWidth", 166);
aNBT.setInteger("maxRecipesPerPage", 1);
+ aNBT.setInteger("yShift", 6);
}
}
diff --git a/src/main/java/GoodGenerator/CrossMod/NEI/NEI_Config.java b/src/main/java/GoodGenerator/CrossMod/NEI/NEI_Config.java
index 1a57824b89..aebfe6102c 100644
--- a/src/main/java/GoodGenerator/CrossMod/NEI/NEI_Config.java
+++ b/src/main/java/GoodGenerator/CrossMod/NEI/NEI_Config.java
@@ -5,6 +5,7 @@ import GoodGenerator.util.MyRecipeAdder;
import codechicken.nei.api.API;
import codechicken.nei.api.IConfigureNEI;
import net.minecraft.block.Block;
+import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
public class NEI_Config implements IConfigureNEI {
@@ -21,6 +22,10 @@ public class NEI_Config implements IConfigureNEI {
API.hideItem(new ItemStack(aBlock, 1));
}
+ public static void hide(Item aItem) {
+ API.hideItem(new ItemStack(aItem, 1));
+ }
+
@Override
public String getName() {
return "Good Generator NEI Plugin";
diff --git a/src/main/java/GoodGenerator/CrossMod/Thaumcraft/LargeEssentiaEnergyData.java b/src/main/java/GoodGenerator/CrossMod/Thaumcraft/LargeEssentiaEnergyData.java
new file mode 100644
index 0000000000..60ef46e8ba
--- /dev/null
+++ b/src/main/java/GoodGenerator/CrossMod/Thaumcraft/LargeEssentiaEnergyData.java
@@ -0,0 +1,124 @@
+package GoodGenerator.CrossMod.Thaumcraft;
+
+import com.google.gson.JsonArray;
+import com.google.gson.JsonElement;
+import com.google.gson.JsonObject;
+import com.google.gson.JsonParser;
+import thaumcraft.api.aspects.Aspect;
+
+import java.io.*;
+import java.net.URL;
+import java.nio.charset.StandardCharsets;
+import java.util.HashMap;
+
+public class LargeEssentiaEnergyData {
+
+ public static final HashMap<Aspect, FuelData> ASPECT_FUEL_DATA = new HashMap<>();
+
+ public static String readJsonFile() {
+ try {
+ URL url = Thread.currentThread().getContextClassLoader().getResource("assets/goodgenerator/data/essentia.json");
+ assert url != null;
+ BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream(), StandardCharsets.UTF_8));
+ String s;
+ StringBuilder sb = new StringBuilder();
+ while ((s = in.readLine()) != null) {
+ sb.append(s);
+ }
+ in.close();
+ return sb.toString();
+ } catch (IOException e) {
+ e.printStackTrace();
+ return null;
+ }
+ }
+
+ public static void processEssentiaData() {
+ String data = readJsonFile();
+ if (data == null) {
+ return;
+ }
+ JsonParser jsonParser = new JsonParser();
+ JsonObject jsonObject = (JsonObject)jsonParser.parse(data);
+ JsonArray jsonArray = jsonObject.get("Essentia").getAsJsonArray();
+ for (JsonElement elm : jsonArray) {
+ JsonObject essData = elm.getAsJsonObject();
+ String aspectName = essData.get("name").getAsString();
+ Aspect aspect = Aspect.getAspect(aspectName.toLowerCase());
+ if (aspect != null) {
+ int fuel = essData.get("fuelValue").getAsInt();
+ String cate = essData.get("category").getAsString();
+ float ceo = essData.get("consumeCeo").getAsFloat();
+ ASPECT_FUEL_DATA.put(aspect, new FuelData(fuel, cate, ceo));
+ }
+ }
+ }
+
+ public static int getAspectTypeIndex(Aspect aspect) {
+ if (ASPECT_FUEL_DATA.containsKey(aspect)) {
+ return ASPECT_FUEL_DATA.get(aspect).getCategoryIndex();
+ }
+ else return -1;
+ }
+
+ public static String getAspectType(Aspect aspect) {
+ if (ASPECT_FUEL_DATA.containsKey(aspect)) {
+ return ASPECT_FUEL_DATA.get(aspect).getCategory();
+ }
+ else return null;
+ }
+
+ public static int getAspectFuelValue(Aspect aspect) {
+ if (ASPECT_FUEL_DATA.containsKey(aspect)) {
+ return ASPECT_FUEL_DATA.get(aspect).getFuelValue();
+ }
+ else return 0;
+ }
+
+ public static float getAspectCeo(Aspect aspect) {
+ if (ASPECT_FUEL_DATA.containsKey(aspect)) {
+ return ASPECT_FUEL_DATA.get(aspect).getConsumeSpeed();
+ }
+ else return 0;
+ }
+}
+
+class FuelData {
+ private final int fuelValue;
+ private final String category;
+ private final float consumeSpeed;
+
+ FuelData(int basicValue, String cate, float ceo) {
+ fuelValue = basicValue;
+ category = cate;
+ consumeSpeed = ceo;
+ }
+
+ public int getFuelValue() {
+ return fuelValue;
+ }
+
+ public float getConsumeSpeed() {
+ return consumeSpeed;
+ }
+
+ public String getCategory() {
+ return category;
+ }
+
+ public int getCategoryIndex() {
+ switch (category) {
+ case "NORMAL": return 0;
+ case "AIR": return 1;
+ case "THERMAL": return 2;
+ case "UNSTABLE": return 3;
+ case "VICTUS": return 4;
+ case "TAINTED": return 5;
+ case "MECHANICS": return 6;
+ case "SPRITE": return 7;
+ case "RADIATION": return 8;
+ case "ELECTRIC": return 9;
+ default: return -1;
+ }
+ }
+} \ No newline at end of file
diff --git a/src/main/java/GoodGenerator/CrossMod/Thaumcraft/Research.java b/src/main/java/GoodGenerator/CrossMod/Thaumcraft/Research.java
index 12fcefe4e0..08aa1e4409 100644
--- a/src/main/java/GoodGenerator/CrossMod/Thaumcraft/Research.java
+++ b/src/main/java/GoodGenerator/CrossMod/Thaumcraft/Research.java
@@ -1,15 +1,22 @@
package GoodGenerator.CrossMod.Thaumcraft;
+import GoodGenerator.Items.MyMaterial;
import GoodGenerator.util.DescTextLocalization;
import GoodGenerator.util.ItemRefer;
+import com.github.bartimaeusnek.bartworks.common.loaders.ItemRegistry;
import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader;
+import cpw.mods.fml.common.Loader;
import gregtech.api.GregTech_API;
import gregtech.api.enums.ItemList;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
import gregtech.api.enums.TC_Aspects;
+import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
import ic2.core.Ic2Items;
+import net.minecraft.block.Block;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemCoal;
import net.minecraft.item.ItemStack;
import thaumcraft.api.aspects.Aspect;
import thaumcraft.api.aspects.AspectList;
@@ -17,14 +24,25 @@ import thaumcraft.common.config.ConfigBlocks;
import thaumcraft.common.config.ConfigItems;
import java.util.Arrays;
+import java.util.Collections;
import static thaumcraft.api.ThaumcraftApi.addArcaneCraftingRecipe;
public class Research{
public static void addResearch() {
- DescTextLocalization.addText("research.ESSENTIA_GENERATOR.page",3);
+ DescTextLocalization.addText("research.ESSENTIA_GENERATOR.page",4);
DescTextLocalization.addText("research.ESSENTIA_CELL.page",1);
+ DescTextLocalization.addText("research.ESSENTIA_UPGRADE_BLANK.page",1);
+ DescTextLocalization.addText("research.ESSENTIA_UPGRADE_AIR.page",2);
+ DescTextLocalization.addText("research.ESSENTIA_UPGRADE_THERMAL.page",3);
+ DescTextLocalization.addText("research.ESSENTIA_UPGRADE_UNSTABLE.page",3);
+ DescTextLocalization.addText("research.ESSENTIA_UPGRADE_VICTUS.page",3);
+ DescTextLocalization.addText("research.ESSENTIA_UPGRADE_TAINTED.page",4);
+ DescTextLocalization.addText("research.ESSENTIA_UPGRADE_MECHANICS.page",3);
+ DescTextLocalization.addText("research.ESSENTIA_UPGRADE_SPRITE.page",3);
+ DescTextLocalization.addText("research.ESSENTIA_UPGRADE_RADIATION.page",3);
+ DescTextLocalization.addText("research.ESSENTIA_UPGRADE_ELECTRIC.page",2);
GregTech_API.sThaumcraftCompat.addResearch(
"ESSENTIA_GENERATOR",
"Combustion Engine in Magic World",
@@ -87,8 +105,10 @@ public class Research{
"ESSENTIA_GENERATOR",
GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Thaumium, 1),
new ItemStack[]{
- GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Steel, 1),
- ItemList.Electric_Pump_MV.get(1L),
+ GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.StainlessSteel, 1),
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.ElectricalSteel, 1),
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.ElectricalSteel, 1),
+ ItemList.Electric_Pump_HV.get(1L),
new ItemStack(ConfigBlocks.blockTube, 1, 4),
new ItemStack(ConfigBlocks.blockCosmeticOpaque, 1, 2),
},
@@ -111,7 +131,8 @@ public class Research{
'A', Ic2Items.advancedMachine
),
"research.ESSENTIA_GENERATOR.page.1",
- "research.ESSENTIA_GENERATOR.page.2"
+ "research.ESSENTIA_GENERATOR.page.2",
+ "research.ESSENTIA_GENERATOR.page.3"
}
);
GregTech_API.sThaumcraftCompat.addResearch(
@@ -134,17 +155,17 @@ public class Research{
"research.ESSENTIA_CELL.page.0",
GregTech_API.sThaumcraftCompat.addInfusionRecipe(
"ESSENTIA_CELL",
- GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Thaumium, 1),
+ ItemRefer.Essentia_Cell_T1.get(1),
new ItemStack[]{
- GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Enderium, 1),
- ItemList.Electric_Pump_HV.get(1L),
- ItemList.QuantumEye.get(1L),
- new ItemStack(ConfigBlocks.blockCosmeticOpaque, 1, 2),
- GT_OreDictUnificator.get(OrePrefixes.gearGt, Materials.Platinum, 1),
- WerkstoffLoader.Salt.get(OrePrefixes.gemExquisite, 1)
+ GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.TungstenSteel, 1),
+ ItemList.FluidRegulator_EV.get(1L),
+ ItemList.QuantumStar.get(1L),
+ new ItemStack(ConfigBlocks.blockJar, 1, 0),
+ GT_OreDictUnificator.get(OrePrefixes.spring, Materials.Platinum, 1),
+ GT_OreDictUnificator.get(OrePrefixes.gearGt, Materials.Desh, 1)
},
ItemRefer.Essentia_Cell_T2.get(1),
- 5,
+ 6,
Arrays.asList(
new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 64),
new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 64),
@@ -153,25 +174,447 @@ public class Research{
),
GregTech_API.sThaumcraftCompat.addInfusionRecipe(
"ESSENTIA_CELL",
- GT_OreDictUnificator.get(OrePrefixes.frameGt, Materials.Void, 1),
+ ItemRefer.Essentia_Cell_T2.get(1),
new ItemStack[]{
- GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Titanium, 1),
- ItemList.Electric_Pump_EV.get(1L),
- ItemList.QuantumStar.get(1L),
- new ItemStack(ConfigBlocks.blockCosmeticOpaque, 1, 2),
+ GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.NiobiumTitanium, 1),
+ ItemList.Field_Generator_IV.get(1L),
+ ItemList.Reactor_Coolant_Sp_3.get(1L),
new ItemStack(ConfigItems.itemResource,1,14),
- Ic2Items.iridiumPlate,
Ic2Items.fluidregulator,
new ItemStack(ConfigBlocks.blockCrystal, 1, 6),
+ GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Plutonium241, 1),
+ GT_OreDictUnificator.get(OrePrefixes.gearGt, Materials.Void, 1),
+ GT_OreDictUnificator.get(OrePrefixes.lens, Materials.EnderEye, 1),
+ new ItemStack(ConfigBlocks.blockMetalDevice, 1, 3)
},
ItemRefer.Essentia_Cell_T3.get(1),
- 6,
+ 8,
Arrays.asList(
new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 128),
new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 128),
new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 64)
)
),
+ GregTech_API.sThaumcraftCompat.addInfusionRecipe(
+ "ESSENTIA_CELL",
+ ItemRefer.Essentia_Cell_T3.get(1),
+ new ItemStack[]{
+ GT_OreDictUnificator.get(OrePrefixes.pipeTiny, Materials.Europium, 1),
+ ItemList.Emitter_LuV.get(1L),
+ ItemList.FluidRegulator_LuV.get(1L),
+ new ItemStack(ConfigItems.itemEldritchObject,1,3),
+ new ItemStack(ItemRegistry.bw_realglas, 1, 3),
+ GT_OreDictUnificator.get(OrePrefixes.wireFine, Materials.Indium, 1),
+ GT_OreDictUnificator.get(OrePrefixes.gearGt, Materials.Ichorium, 1),
+ GT_OreDictUnificator.get(OrePrefixes.spring, Materials.Quantium, 1),
+ GT_OreDictUnificator.get(OrePrefixes.stickLong, Materials.Sunnarium, 1),
+ MyMaterial.orundum.get(OrePrefixes.gemExquisite, 1)
+ },
+ ItemRefer.Essentia_Cell_T4.get(1),
+ 10,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.AQUA, 256),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 256),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 128)
+ )
+ )
+ }
+ );
+ ItemStack broad = new ItemStack(ConfigBlocks.blockCosmeticSolid, 1, 6);
+ if (Loader.isModLoaded("dreamcraft")) broad = GT_ModHandler.getModItem("dreamcraft", "item.ArcaneSlate", 1);
+ GregTech_API.sThaumcraftCompat.addResearch(
+ "ESSENTIA_UPGRADE_BLANK",
+ "Upgrade your generator",
+ "Let's try some more dangerous essentia.",
+ new String[]{"ESSENTIA_GENERATOR"},
+ "ARTIFICE",
+ ItemRefer.Essentia_Upgrade_Empty.get(1),
+ 2, 0, -9, 4,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.AURAM, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)
+ ),
+ null,
+ new Object[] {
+ "research.ESSENTIA_UPGRADE_BLANK.page.0",
+ addArcaneCraftingRecipe(
+ "ESSENTIA_UPGRADE_BLANK",
+ ItemRefer.Essentia_Upgrade_Empty.get(1),
+ new AspectList().add(Aspect.AIR, 80).add(Aspect.ENTROPY, 50).add(Aspect.ORDER, 50).add(Aspect.WATER, 80),
+ "AMB","CZD","EIF",
+ 'A', GT_OreDictUnificator.get(OrePrefixes.screw, Materials.InfusedAir, 1),
+ 'B', GT_OreDictUnificator.get(OrePrefixes.screw, Materials.InfusedEarth, 1),
+ 'C', GT_OreDictUnificator.get(OrePrefixes.screw, Materials.InfusedFire, 1),
+ 'D', GT_OreDictUnificator.get(OrePrefixes.screw, Materials.InfusedWater, 1),
+ 'E', GT_OreDictUnificator.get(OrePrefixes.screw, Materials.InfusedOrder, 1),
+ 'F', GT_OreDictUnificator.get(OrePrefixes.screw, Materials.InfusedEntropy, 1),
+ 'M', new ItemStack(ConfigItems.itemResource, 1, 10),
+ 'Z', broad,
+ 'I', GT_OreDictUnificator.get(OrePrefixes.plateDense, Materials.PulsatingIron, 1)
+ ),
+ }
+ );
+ GregTech_API.sThaumcraftCompat.addResearch(
+ "ESSENTIA_UPGRADE_AIR",
+ "Essentia: AIR",
+ "I can feel it on the wind.",
+ new String[]{"ESSENTIA_UPGRADE_BLANK"},
+ "ARTIFICE",
+ ItemRefer.Essentia_Upgrade_Air.get(1),
+ 1, 0, -9, 5,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.AER, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)
+ ),
+ null,
+ new Object[] {
+ "research.ESSENTIA_UPGRADE_AIR.page.0",
+ GregTech_API.sThaumcraftCompat.addInfusionRecipe(
+ "ESSENTIA_UPGRADE_AIR",
+ ItemRefer.Essentia_Upgrade_Empty.get(1),
+ new ItemStack[] {
+ GT_OreDictUnificator.get(OrePrefixes.cell, Materials.LiquidAir, 1),
+ GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Hydrogen, 1),
+ GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Helium, 1),
+ GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Argon, 1),
+ WerkstoffLoader.Neon.get(OrePrefixes.cell, 1),
+ WerkstoffLoader.Krypton.get(OrePrefixes.cell, 1),
+ },
+ ItemRefer.Essentia_Upgrade_Air.get(1),
+ 5,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.AER, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.VOLATUS, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.MOTUS, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.AURAM, 128)
+ )
+ ),
+ "research.ESSENTIA_UPGRADE_AIR.page.1"
+ }
+ );
+ GregTech_API.sThaumcraftCompat.addResearch(
+ "ESSENTIA_UPGRADE_THERMAL",
+ "Essentia: THERMAL",
+ "Melting down.",
+ new String[]{"ESSENTIA_UPGRADE_BLANK"},
+ "ARTIFICE",
+ ItemRefer.Essentia_Upgrade_Thermal.get(1),
+ 1, 0, -10, 5,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)
+ ),
+ null,
+ new Object[] {
+ "research.ESSENTIA_UPGRADE_THERMAL.page.0",
+ GregTech_API.sThaumcraftCompat.addInfusionRecipe(
+ "ESSENTIA_UPGRADE_THERMAL",
+ ItemRefer.Essentia_Upgrade_Empty.get(1),
+ new ItemStack[] {
+ GT_OreDictUnificator.get(OrePrefixes.lens, Materials.Firestone, 1),
+ GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Netherrack, 1),
+ Ic2Items.reactorPlatingHeat,
+ ItemList.Casing_Coil_Nichrome.get(1),
+ new ItemStack(ConfigItems.itemResource, 1, 1),
+ new ItemStack(ConfigItems.itemResource, 1, 0),
+ },
+ ItemRefer.Essentia_Upgrade_Thermal.get(1),
+ 5,
+ Collections.singletonList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.IGNIS, 1024)
+ )
+ ),
+ "research.ESSENTIA_UPGRADE_THERMAL.page.1",
+ "research.ESSENTIA_UPGRADE_THERMAL.page.2"
+ }
+ );
+ GregTech_API.sThaumcraftCompat.addResearch(
+ "ESSENTIA_UPGRADE_UNSTABLE",
+ "Essentia: UNSTABLE",
+ "Heart of chaos.",
+ new String[]{"ESSENTIA_UPGRADE_BLANK"},
+ "ARTIFICE",
+ ItemRefer.Essentia_Upgrade_Unstable.get(1),
+ 1, 0, -11, 5,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.PERDITIO, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)
+ ),
+ null,
+ new Object[] {
+ "research.ESSENTIA_UPGRADE_UNSTABLE.page.0",
+ GregTech_API.sThaumcraftCompat.addInfusionRecipe(
+ "ESSENTIA_UPGRADE_UNSTABLE",
+ ItemRefer.Essentia_Upgrade_Empty.get(1),
+ new ItemStack[] {
+ GT_OreDictUnificator.get(OrePrefixes.cell, Materials.GasolinePremium, 1),
+ GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Unstable, 1),
+ GT_OreDictUnificator.get(OrePrefixes.gearGt, Materials.Void, 1),
+ GT_OreDictUnificator.get(OrePrefixes.gem, Materials.InfusedEntropy, 1),
+ Ic2Items.industrialTnt,
+ new ItemStack(ItemRegistry.DESTRUCTOPACK)
+ },
+ ItemRefer.Essentia_Upgrade_Unstable.get(1),
+ 6,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.PERDITIO, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.VACUOS, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.VENENUM, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.TELUM, 128)
+ )
+ ),
+ "research.ESSENTIA_UPGRADE_UNSTABLE.page.1",
+ "research.ESSENTIA_UPGRADE_UNSTABLE.page.2"
+ }
+ );
+ ItemStack meatDust = GT_OreDictUnificator.get(OrePrefixes.dust, Materials.MeatRaw, 1);
+ if (Loader.isModLoaded("dreamcraft")) meatDust = GT_ModHandler.getModItem("dreamcraft", "GTNHBioItems", 1, 2);
+ GregTech_API.sThaumcraftCompat.addResearch(
+ "ESSENTIA_UPGRADE_VICTUS",
+ "Essentia: VICTUS",
+ "Will it bleed?",
+ new String[]{"ESSENTIA_UPGRADE_BLANK"},
+ "ARTIFICE",
+ ItemRefer.Essentia_Upgrade_Victus.get(1),
+ 1, 0, -12, 5,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.VICTUS, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)
+ ),
+ null,
+ new Object[] {
+ "research.ESSENTIA_UPGRADE_VICTUS.page.0",
+ GregTech_API.sThaumcraftCompat.addInfusionRecipe(
+ "ESSENTIA_UPGRADE_VICTUS",
+ ItemRefer.Essentia_Upgrade_Empty.get(1),
+ new ItemStack[] {
+ meatDust,
+ ItemList.Food_Dough_Sugar.get(1),
+ GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Calcium, 1),
+ new ItemStack(Item.getItemById(367), 1),
+ new ItemStack(ConfigItems.itemResource, 1, 4),
+ new ItemStack(ConfigBlocks.blockMetalDevice, 1, 8),
+ },
+ ItemRefer.Essentia_Upgrade_Victus.get(1),
+ 5,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.VICTUS, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.SPIRITUS, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.SANO, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.CORPUS, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.HUMANUS, 128)
+ )
+ ),
+ "research.ESSENTIA_UPGRADE_VICTUS.page.1",
+ "research.ESSENTIA_UPGRADE_VICTUS.page.2"
+ }
+ );
+ GregTech_API.sThaumcraftCompat.addResearch(
+ "ESSENTIA_UPGRADE_TAINTED",
+ "Essentia: TAINTED",
+ "Dirty Deeds Done Dirt Cheap",
+ new String[]{"ESSENTIA_UPGRADE_BLANK"},
+ "ARTIFICE",
+ ItemRefer.Essentia_Upgrade_Tainted.get(1),
+ 1, 0, -13, 5,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.MORTUUS, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)
+ ),
+ null,
+ new Object[] {
+ "research.ESSENTIA_UPGRADE_TAINTED.page.0",
+ "research.ESSENTIA_UPGRADE_TAINTED.page.1",
+ GregTech_API.sThaumcraftCompat.addInfusionRecipe(
+ "ESSENTIA_UPGRADE_TAINTED",
+ ItemRefer.Essentia_Upgrade_Empty.get(1),
+ new ItemStack[] {
+ new ItemStack(ConfigBlocks.blockTaintFibres, 1, 0),
+ new ItemStack(ConfigBlocks.blockTaintFibres, 1, 2),
+ new ItemStack(ConfigItems.itemResource, 1, 11),
+ GT_OreDictUnificator.get(OrePrefixes.spring, Materials.NaquadahEnriched, 1),
+ GT_OreDictUnificator.get(OrePrefixes.gearGt, Materials.EndSteel, 1),
+ new ItemStack(Block.getBlockById(138), 1),
+ },
+ ItemRefer.Essentia_Upgrade_Tainted.get(1),
+ 7,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.MORTUUS, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ALIENIS, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.EXANIMIS, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.VITIUM, 128)
+ )
+ ),
+ "research.ESSENTIA_UPGRADE_TAINTED.page.2",
+ "research.ESSENTIA_UPGRADE_TAINTED.page.3"
+ }
+ );
+ GregTech_API.sThaumcraftCompat.addResearch(
+ "ESSENTIA_UPGRADE_MECHANICS",
+ "Essentia: MECHANICS",
+ "Driven by Ether.",
+ new String[]{"ESSENTIA_UPGRADE_BLANK"},
+ "ARTIFICE",
+ ItemRefer.Essentia_Upgrade_Mechanics.get(1),
+ 1, 0, -14, 5,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)
+ ),
+ null,
+ new Object[] {
+ "research.ESSENTIA_UPGRADE_MECHANICS.page.0",
+ GregTech_API.sThaumcraftCompat.addInfusionRecipe(
+ "ESSENTIA_UPGRADE_MECHANICS",
+ ItemRefer.Essentia_Upgrade_Empty.get(1),
+ new ItemStack[] {
+ new ItemStack(ConfigBlocks.blockTube, 1, 4),
+ new ItemStack(ConfigBlocks.blockTube, 1, 2),
+ GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.VividAlloy, 1),
+ GT_OreDictUnificator.get(OrePrefixes.pipeMedium, Materials.Polybenzimidazole, 1),
+ ItemList.Electric_Motor_IV.get(1),
+ ItemList.Electric_Pump_IV.get(1),
+ },
+ ItemRefer.Essentia_Upgrade_Mechanics.get(1),
+ 5,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ITER, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.LIMUS, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 128)
+ )
+ ),
+ "research.ESSENTIA_UPGRADE_MECHANICS.page.1",
+ "research.ESSENTIA_UPGRADE_MECHANICS.page.2"
+ }
+ );
+ GregTech_API.sThaumcraftCompat.addResearch(
+ "ESSENTIA_UPGRADE_SPRITE",
+ "Essentia: SPRITE",
+ "Brain in a Machine.",
+ new String[]{"ESSENTIA_UPGRADE_BLANK"},
+ "ARTIFICE",
+ ItemRefer.Essentia_Upgrade_Spirit.get(1),
+ 1, 0, -15, 5,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)
+ ),
+ null,
+ new Object[] {
+ "research.ESSENTIA_UPGRADE_SPRITE.page.0",
+ GregTech_API.sThaumcraftCompat.addInfusionRecipe(
+ "ESSENTIA_UPGRADE_SPRITE",
+ ItemRefer.Essentia_Upgrade_Empty.get(1),
+ new ItemStack[] {
+ new ItemStack(ConfigBlocks.blockJar, 1, 1),
+ GT_OreDictUnificator.get(OrePrefixes.food, Materials.Cheese, 1),
+ GT_OreDictUnificator.get(OrePrefixes.rotor, Materials.Shadow, 1),
+ GT_OreDictUnificator.get(OrePrefixes.spring, Materials.FierySteel, 1),
+ GT_OreDictUnificator.get(OrePrefixes.cell, Materials.Milk, 1),
+ ItemList.Machine_EV_Scanner.get(1)
+ },
+ ItemRefer.Essentia_Upgrade_Spirit.get(1),
+ 5,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.COGNITIO, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.SENSUS, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.LUCRUM, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.STRONTIO, 128),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.NEBRISUM, 128)
+ )
+ ),
+ "research.ESSENTIA_UPGRADE_SPRITE.page.1",
+ "research.ESSENTIA_UPGRADE_SPRITE.page.2"
+ }
+ );
+ GregTech_API.sThaumcraftCompat.addResearch(
+ "ESSENTIA_UPGRADE_RADIATION",
+ "Essentia: RADIATION",
+ "Atomic Heart",
+ new String[]{"ESSENTIA_UPGRADE_BLANK"},
+ "ARTIFICE",
+ ItemRefer.Essentia_Upgrade_Radiation.get(1),
+ 1, 0, -16, 5,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.RADIO, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)
+ ),
+ null,
+ new Object[] {
+ "research.ESSENTIA_UPGRADE_RADIATION.page.0",
+ GregTech_API.sThaumcraftCompat.addInfusionRecipe(
+ "ESSENTIA_UPGRADE_RADIATION",
+ ItemRefer.Essentia_Upgrade_Empty.get(1),
+ new ItemStack[] {
+ ItemRefer.High_Density_Plutonium.get(1),
+ ItemRefer.High_Density_Uranium.get(1),
+ ItemRefer.High_Density_Thorium.get(1),
+ Ic2Items.UranFuel,
+ Ic2Items.MOXFuel,
+ WerkstoffLoader.Tiberium.get(OrePrefixes.gem, 1)
+ },
+ ItemRefer.Essentia_Upgrade_Radiation.get(1),
+ 8,
+ Collections.singletonList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.RADIO, 1024)
+ )
+ ),
+ "research.ESSENTIA_UPGRADE_RADIATION.page.1",
+ "research.ESSENTIA_UPGRADE_RADIATION.page.2"
+ }
+ );
+ GregTech_API.sThaumcraftCompat.addResearch(
+ "ESSENTIA_UPGRADE_ELECTRIC",
+ "Essentia: ELECTRIC",
+ "Get electricity from... electricity?",
+ new String[]{"ESSENTIA_UPGRADE_AIR", "ESSENTIA_UPGRADE_THERMAL", "ESSENTIA_UPGRADE_UNSTABLE", "ESSENTIA_UPGRADE_VICTUS", "ESSENTIA_UPGRADE_TAINTED", "ESSENTIA_UPGRADE_MECHANICS", "ESSENTIA_UPGRADE_SPRITE", "ESSENTIA_UPGRADE_RADIATION"},
+ "ARTIFICE",
+ ItemRefer.Essentia_Upgrade_Electric.get(1),
+ 1, 0, -12, 7,
+ Arrays.asList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.PERMUTATIO, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.INSTRUMENTUM, 10L),
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 10L)
+ ),
+ null,
+ new Object[] {
+ "research.ESSENTIA_UPGRADE_ELECTRIC.page.0",
+ GregTech_API.sThaumcraftCompat.addInfusionRecipe(
+ "ESSENTIA_UPGRADE_RADIATION",
+ ItemRefer.Essentia_Upgrade_Empty.get(1),
+ new ItemStack[] {
+ GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorMV, 1),
+ GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorHV, 1),
+ GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorEV, 1),
+ GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorIV, 1),
+ GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorLuV, 1),
+ GT_OreDictUnificator.get(OrePrefixes.wireGt01, Materials.SuperconductorZPM, 1)
+ },
+ ItemRefer.Essentia_Upgrade_Electric.get(1),
+ 10,
+ Collections.singletonList(
+ new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 32768)
+ )
+ ),
+ "research.ESSENTIA_UPGRADE_ELECTRIC.page.1"
}
);
}