aboutsummaryrefslogtreecommitdiff
path: root/src/Java/gtPlusPlus
diff options
context:
space:
mode:
Diffstat (limited to 'src/Java/gtPlusPlus')
-rw-r--r--src/Java/gtPlusPlus/GTplusplus.java11
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_General.java4
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java16
-rw-r--r--src/Java/gtPlusPlus/core/recipe/RECIPES_Old_Circuits.java121
-rw-r--r--src/Java/gtPlusPlus/xmod/gregtech/common/items/MetaGeneratedGregtechItems.java105
5 files changed, 140 insertions, 117 deletions
diff --git a/src/Java/gtPlusPlus/GTplusplus.java b/src/Java/gtPlusPlus/GTplusplus.java
index 7ce6ceb827..9b28eeae97 100644
--- a/src/Java/gtPlusPlus/GTplusplus.java
+++ b/src/Java/gtPlusPlus/GTplusplus.java
@@ -30,6 +30,7 @@ import gtPlusPlus.core.handler.Recipes.RegistrationHandler;
import gtPlusPlus.core.handler.events.LoginEventHandler;
import gtPlusPlus.core.item.general.RF2EU_Battery;
import gtPlusPlus.core.lib.CORE;
+import gtPlusPlus.core.recipe.RECIPES_Old_Circuits;
import gtPlusPlus.core.util.Utils;
import gtPlusPlus.core.util.item.ItemUtils;
import gtPlusPlus.core.util.reflect.ReflectionUtils;
@@ -228,6 +229,12 @@ public class GTplusplus implements ActionListener {
// ~
//ReflectionUtils.becauseIWorkHard();
+
+ //Circuits
+ if (CORE.configSwitches.enableOldGTcircuits){
+ RECIPES_Old_Circuits.handleCircuits();
+ new RECIPES_Old_Circuits();
+ }
//Make Burnables burnable
if (!CORE.burnables.isEmpty()){
@@ -284,13 +291,15 @@ public class GTplusplus implements ActionListener {
private static boolean removeCircuitRecipeMap(){
try {
+ Utils.LOG_INFO("[Old Feature - Circuits] Trying to override the Circuit Assembler Recipe map, so that no recipes for new circuits get added.");
ReflectionUtils.setFinalStatic(GT_Recipe_Map.class.getDeclaredField("sCircuitAssemblerRecipes"), new EmptyRecipeMap(new HashSet<GT_Recipe>(0), "gt.recipe.removed", "Removed", null, GT_Values.RES_PATH_GUI + "basicmachines/Default", 0, 0, 0, 0, 0, GT_Values.E, 0, GT_Values.E, true, false));
Field jaffar = GT_Recipe_Map.class.getDeclaredField("sCircuitAssemblerRecipes");
FieldUtils.removeFinalModifier(jaffar, true);
jaffar.set(null, new EmptyRecipeMap(new HashSet<GT_Recipe>(0), "gt.recipe.removed", "Removed", null, GT_Values.RES_PATH_GUI + "basicmachines/Default", 0, 0, 0, 0, 0, GT_Values.E, 0, GT_Values.E, true, false));
+ Utils.LOG_INFO("[Old Feature - Circuits] Successfully replaced circuit assembler recipe map with one that cannot hold recipes.");
}
catch (Exception e) {
- Utils.LOG_INFO("Failed removing circuit assembler recipe map.");
+ Utils.LOG_INFO("[Old Feature - Circuits] Failed removing circuit assembler recipe map.");
return false;
}
return true;
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java
index 992f004fe7..fd8874ca0b 100644
--- a/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_General.java
@@ -44,11 +44,11 @@ public class RECIPES_General {
OUTPUT_Blueprint);
//Bronze Workbench
- RecipeUtils.recipeBuilder(
+ /*RecipeUtils.recipeBuilder(
RECIPE_BronzePlate, RECIPE_CraftingTable, RECIPE_BronzePlate,
RECIPE_BronzePlate, RECIPE_BasicCasingIC2, RECIPE_BronzePlate,
RECIPE_BronzePlate, RECIPE_BronzePlate, RECIPE_BronzePlate,
- OUTPUT_Workbench_Bronze);
+ OUTPUT_Workbench_Bronze);*/
//Generates recipes for the Dull shard when TC is not installed.
if (!LoadedMods.Thaumcraft){
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java
index 1b7a9d6f03..9097b585aa 100644
--- a/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_Machines.java
@@ -204,13 +204,13 @@ public class RECIPES_Machines {
public static ItemStack IC2MFSU;
//Circuits
- public static String circuitPrimitive = "circuitBasic";
- public static String circuitTier1 = "circuitGood";
- public static String circuitTier2 = "circuitAdvanced";
- public static String circuitTier3 = "circuitData";
- public static String circuitTier4 = "circuitElite";
- public static String circuitTier5 = "circuitMaster";
- public static String circuitTier6 = "circuitUltimate";
+ public static ItemStack circuitPrimitive = ItemList.Circuit_Primitive.get(1);
+ public static ItemStack circuitTier1 = ItemList.Circuit_Basic.get(1);//"circuitGood";
+ public static ItemStack circuitTier2 = ItemList.Circuit_Good.get(1);//"circuitAdvanced";
+ public static ItemStack circuitTier3 = ItemList.Circuit_Advanced.get(1);//"circuitData";
+ public static ItemStack circuitTier4 = ItemList.Circuit_Elite.get(1);//"circuitElite";
+ public static ItemStack circuitTier5 = ItemList.Circuit_Master.get(1);//"circuitMaster";
+ public static ItemStack circuitTier6 = ItemList.Circuit_Ultimate.get(1);//"circuitUltimate";
public static String circuitTier7 = "circuitSuperconductor";
public static String circuitTier8 = "circuitInfinite";
public static String circuitTier9 = "circuitQuantum";
@@ -729,7 +729,7 @@ public class RECIPES_Machines {
plateTier1 = "plateTin";
pipeTier1 = "pipeLargeClay";
- circuitTier1 = "circuitPrimitive";
+ circuitTier1 = ItemList.Circuit_Primitive.get(1);
plateTier2 = "plateCopper";
pipeTier2 = "pipeHugeClay";
plateTier3 = "plateBronze";
diff --git a/src/Java/gtPlusPlus/core/recipe/RECIPES_Old_Circuits.java b/src/Java/gtPlusPlus/core/recipe/RECIPES_Old_Circuits.java
index b284ecac7e..9ef02aa5b3 100644
--- a/src/Java/gtPlusPlus/core/recipe/RECIPES_Old_Circuits.java
+++ b/src/Java/gtPlusPlus/core/recipe/RECIPES_Old_Circuits.java
@@ -1,8 +1,11 @@
package gtPlusPlus.core.recipe;
+import codechicken.nei.api.API;
+import cpw.mods.fml.common.Loader;
import gregtech.api.enums.*;
import gregtech.api.interfaces.IOreRecipeRegistrator;
import gregtech.api.util.*;
+import gtPlusPlus.core.util.Utils;
import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList;
import net.minecraft.item.ItemStack;
@@ -14,6 +17,7 @@ public class RECIPES_Old_Circuits implements IOreRecipeRegistrator {
@Override
public void registerOre(final OrePrefixes aPrefix, final Materials aMaterial, final String aOreDictName, final String aModName, final ItemStack aStack) {
if (aOreDictName.equals(OreDictNames.craftingLensRed.toString())) {
+ Utils.LOG_INFO("[Old Feature - Circuits] Adding recipes for old circuits. (Part 2)");
GT_Values.RA.addLaserEngraverRecipe(GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Copper, 1L), GT_Utility.copyAmount(0L, new Object[]{aStack}), GregtechItemList.Old_Circuit_Parts_Wiring_Basic.get(1L, new Object[0]), 64, 30);
GT_Values.RA.addLaserEngraverRecipe(GT_OreDictUnificator.get(OrePrefixes.foil, Materials.AnnealedCopper, 1L), GT_Utility.copyAmount(0L, new Object[]{aStack}), GregtechItemList.Old_Circuit_Parts_Wiring_Basic.get(1L, new Object[0]), 64, 30);
GT_Values.RA.addLaserEngraverRecipe(GT_OreDictUnificator.get(OrePrefixes.foil, Materials.Gold, 1L), GT_Utility.copyAmount(0L, new Object[]{aStack}), GregtechItemList.Old_Circuit_Parts_Wiring_Advanced.get(1L, new Object[0]), 64, 120);
@@ -22,17 +26,20 @@ public class RECIPES_Old_Circuits implements IOreRecipeRegistrator {
}
else if (aOreDictName.equals(OreDictNames.craftingLensGreen.toString())) {
+ Utils.LOG_INFO("[Old Feature - Circuits] Adding recipes for old circuits. (Part 3)");
GT_Values.RA.addLaserEngraverRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Olivine, 1L), GT_Utility.copyAmount(0L, new Object[]{aStack}), GregtechItemList.Old_Circuit_Parts_Crystal_Chip_Elite.get(1L, new Object[0]), 256, 480);
GT_Values.RA.addLaserEngraverRecipe(GT_OreDictUnificator.get(OrePrefixes.plate, Materials.Emerald, 1L), GT_Utility.copyAmount(0L, new Object[]{aStack}), GregtechItemList.Old_Circuit_Parts_Crystal_Chip_Elite.get(1L, new Object[0]), 256, 480);
}
else if (aOreDictName.equals(OreDictNames.craftingLensBlue.toString()) || aOreDictName.equals(OreDictNames.craftingLensCyan.toString()) || aOreDictName.equals(OreDictNames.craftingLensLightBlue.toString())) {
+ Utils.LOG_INFO("[Old Feature - Circuits] Adding recipes for old circuits. (Part 4)");
GT_Values.RA.addLaserEngraverRecipe(ItemList.IC2_LapotronCrystal.getWildcard(1L, new Object[0]), GT_Utility.copyAmount(0L, new Object[]{aStack}), GregtechItemList.Old_Circuit_Parts_Crystal_Chip_Master.get(3L, new Object[0]), 256, 480);
}
}
- public static boolean addCircuitRecipes(){
+ private static boolean addCircuitRecipes(){
+ Utils.LOG_INFO("[Old Feature - Circuits] Adding recipes for old circuits. (Part 1)");
GT_ModHandler.addShapelessCraftingRecipe(GregtechItemList.Old_Circuit_Primitive.get(1L, new Object[0]), new Object[]{GT_ModHandler.getIC2Item("casingadviron", 1L), OrePrefixes.wireGt01.get(Materials.RedAlloy), OrePrefixes.wireGt01.get(Materials.RedAlloy), OrePrefixes.wireGt01.get(Materials.Tin)});
GT_ModHandler.addCraftingRecipe(GregtechItemList.Old_Circuit_Basic.get(1L, new Object[0]), new Object[]{"WWW", "CPC", "WWW", 'C', OrePrefixes.circuit.get(Materials.Primitive), 'W', OreDictNames.craftingWireCopper, 'P', OrePrefixes.plate.get(Materials.Steel)});
GT_ModHandler.addCraftingRecipe(GregtechItemList.Old_Circuit_Basic.get(1L, new Object[0]), new Object[]{"WCW", "WPW", "WCW", 'C', OrePrefixes.circuit.get(Materials.Primitive), 'W', OreDictNames.craftingWireCopper, 'P', OrePrefixes.plate.get(Materials.Steel)});
@@ -76,14 +83,23 @@ public class RECIPES_Old_Circuits implements IOreRecipeRegistrator {
return true;
}
- public static boolean removeNewCircuits(){
+ public static boolean handleCircuits(){
+
+ hideCircuitsNEI();
+ addCircuitRecipes();
+ removeNewCircuits();
+ return true;
+ }
+
+ private static boolean removeNewCircuits(){
+ Utils.LOG_INFO("[Old Feature - Circuits] Overriding .28+ circuit values in the GT5u Itemlist with values from GT++.");
ItemList.Circuit_Primitive.set(GregtechItemList.Old_Circuit_Primitive.get(1));
ItemList.Circuit_Basic.set(GregtechItemList.Old_Circuit_Basic.get(1));
ItemList.Circuit_Integrated_Good.set(GregtechItemList.Old_Circuit_Good.get(1));
ItemList.Circuit_Good.set(GregtechItemList.Old_Circuit_Good.get(1));
ItemList.Circuit_Advanced.set(GregtechItemList.Old_Circuit_Advanced.get(1));
- ItemList.Circuit_Data.set(GregtechItemList.Old_Circuit_Data.get(1));
+ //ItemList.Circuit_Data.set(GregtechItemList.Old_Circuit_Data.get(1));
ItemList.Circuit_Elite.set(GregtechItemList.Old_Circuit_Elite.get(1));
ItemList.Circuit_Master.set(GregtechItemList.Old_Circuit_Master.get(1));
ItemList.Circuit_Ultimate.set(GregtechItemList.Old_Circuit_Ultimate.get(1));
@@ -101,5 +117,104 @@ public class RECIPES_Old_Circuits implements IOreRecipeRegistrator {
return true;
}
+
+ private static boolean hideCircuitsNEI(){
+ Boolean isNEILoaded = Loader.isModLoaded("NotEnoughItems");
+ if (isNEILoaded){
+ Utils.LOG_INFO("[Old Feature - Circuits] Hiding .28+ circuits in NEI.");
+ String[] CircuitToHide = {
+ "Circuit_Board_Basic",
+ "Circuit_Board_Advanced",
+ "Circuit_Board_Elite",
+ "Circuit_Parts_Advanced",
+ "Circuit_Parts_Wiring_Basic",
+ "Circuit_Parts_Wiring_Advanced",
+ "Circuit_Parts_Wiring_Elite",
+ "Circuit_Parts_Crystal_Chip_Elite",
+ "Circuit_Parts_Crystal_Chip_Master",
+ "Circuit_Primitive",
+ "Circuit_Basic",
+ "Circuit_Integrated_Good",
+ "Circuit_Good",
+ "Circuit_Advanced",
+ "Circuit_Data",
+ "Circuit_Elite",
+ "Circuit_Master",
+ "Circuit_Ultimate",
+ "Circuit_Board_Coated",
+ "Circuit_Board_Phenolic",
+ "Circuit_Board_Epoxy",
+ "Circuit_Board_Fiberglass",
+ "Circuit_Board_Multifiberglass",
+ "Circuit_Board_Wetware",
+ "Circuit_Parts_Resistor",
+ "Circuit_Parts_ResistorSMD",
+ "Circuit_Parts_Glass_Tube",
+ "Circuit_Parts_Vacuum_Tube",
+ "Circuit_Parts_Coil",
+ "Circuit_Parts_Diode",
+ "Circuit_Parts_DiodeSMD",
+ "Circuit_Parts_Transistor",
+ "Circuit_Parts_TransistorSMD",
+ "Circuit_Parts_Capacitor",
+ "Circuit_Parts_CapacitorSMD",
+ "Circuit_Silicon_Ingot",
+ "Circuit_Silicon_Ingot2",
+ "Circuit_Silicon_Ingot3",
+ "Circuit_Silicon_Wafer",
+ "Circuit_Silicon_Wafer2",
+ "Circuit_Silicon_Wafer3",
+ "Circuit_Wafer_ILC",
+ "Circuit_Chip_ILC",
+ "Circuit_Wafer_Ram",
+ "Circuit_Chip_Ram",
+ "Circuit_Wafer_NAND",
+ "Circuit_Chip_NAND",
+ "Circuit_Wafer_NOR",
+ "Circuit_Chip_NOR",
+ "Circuit_Wafer_CPU",
+ "Circuit_Chip_CPU",
+ "Circuit_Wafer_SoC",
+ "Circuit_Chip_SoC",
+ "Circuit_Wafer_SoC2",
+ "Circuit_Chip_SoC2",
+ "Circuit_Wafer_PIC",
+ "Circuit_Chip_PIC",
+ "Circuit_Wafer_HPIC",
+ "Circuit_Chip_HPIC",
+ "Circuit_Wafer_NanoCPU",
+ "Circuit_Chip_NanoCPU",
+ "Circuit_Wafer_QuantumCPU",
+ "Circuit_Chip_QuantumCPU",
+ "Circuit_Chip_CrystalCPU",
+ "Circuit_Chip_CrystalSoC",
+ "Circuit_Chip_NeuroCPU",
+ "Circuit_Chip_Stemcell",
+ "Circuit_Processor",
+ "Circuit_Computer",
+ "Circuit_Nanoprocessor",
+ "Circuit_Nanocomputer",
+ "Circuit_Elitenanocomputer",
+ "Circuit_Quantumprocessor",
+ "Circuit_Quantumcomputer",
+ "Circuit_Masterquantumcomputer",
+ "Circuit_Quantummainframe",
+ "Circuit_Crystalprocessor",
+ "Circuit_Crystalcomputer",
+ "Circuit_Ultimatecrystalcomputer",
+ "Circuit_Crystalmainframe",
+ "Circuit_Neuroprocessor",
+ "Circuit_Wetwarecomputer",
+ "Circuit_Wetwaresupercomputer",
+ "Circuit_Wetwaremainframe",
+ "Circuit_Parts_RawCrystalChip"
+ };
+
+ for (String component : CircuitToHide){
+ API.hideItem(ItemList.valueOf(component).get(1L, new Object[0]));
+ }
+ }
+ return true;
+ }
}
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/items/MetaGeneratedGregtechItems.java b/src/Java/gtPlusPlus/xmod/gregtech/common/items/MetaGeneratedGregtechItems.java
index fb6aa9991d..1468e97f85 100644
--- a/src/Java/gtPlusPlus/xmod/gregtech/common/items/MetaGeneratedGregtechItems.java
+++ b/src/Java/gtPlusPlus/xmod/gregtech/common/items/MetaGeneratedGregtechItems.java
@@ -247,6 +247,7 @@ public class MetaGeneratedGregtechItems extends Gregtech_MetaItem_X32 {
private boolean registerOldCircuits(){
//Enable Old Circuits
+ Utils.LOG_INFO("[Old Feature - Circuits] Enabling Pre-5.09.28 Circuits and Data Storage.");
GregtechItemList.Old_Circuit_Primitive.set(this.addItem(200, "NAND Chip", "A very simple Circuit", new Object[]{OrePrefixes.circuit.get(Materials.Primitive)}));
GregtechItemList.Old_Circuit_Basic.set(this.addItem(201, "Basic Electronic Circuit", "A basic Circuit", new Object[]{OrePrefixes.circuit.get(Materials.Basic)}));
@@ -274,109 +275,7 @@ public class MetaGeneratedGregtechItems extends Gregtech_MetaItem_X32 {
GregtechItemList.Old_Circuit_Parts_Wiring_Elite.set(this.addItem(218, "Etched Extreme Voltage Wiring", "Part of Circuit Boards", new Object[0]));
GregtechItemList.Old_Empty_Board_Basic.set(this.addItem(219, "Empty Circuit Board", "A Board Part", new Object[0]));
GregtechItemList.Old_Empty_Board_Elite.set(this.addItem(220, "Empty Processor Board", "A Processor Board Part", new Object[0]));
-
- //Add the old recipes.
- new RECIPES_Old_Circuits();
- Utils.LOG_INFO("[Old Feature] Enabling Pre 5.09.28 circuits & recipes.");
-
- Boolean isNEILoaded = Loader.isModLoaded("NotEnoughItems");
- if (isNEILoaded){
- String[] CircuitToHide = {
- "Circuit_Board_Basic",
- "Circuit_Board_Advanced",
- "Circuit_Board_Elite",
- "Circuit_Parts_Advanced",
- "Circuit_Parts_Wiring_Basic",
- "Circuit_Parts_Wiring_Advanced",
- "Circuit_Parts_Wiring_Elite",
- "Circuit_Parts_Crystal_Chip_Elite",
- "Circuit_Parts_Crystal_Chip_Master",
- "Circuit_Primitive",
- "Circuit_Basic",
- "Circuit_Integrated_Good",
- "Circuit_Good",
- "Circuit_Advanced",
- "Circuit_Data",
- "Circuit_Elite",
- "Circuit_Master",
- "Circuit_Ultimate",
- "Circuit_Board_Coated",
- "Circuit_Board_Phenolic",
- "Circuit_Board_Epoxy",
- "Circuit_Board_Fiberglass",
- "Circuit_Board_Multifiberglass",
- "Circuit_Board_Wetware",
- "Circuit_Parts_Resistor",
- "Circuit_Parts_ResistorSMD",
- "Circuit_Parts_Glass_Tube",
- "Circuit_Parts_Vacuum_Tube",
- "Circuit_Parts_Coil",
- "Circuit_Parts_Diode",
- "Circuit_Parts_DiodeSMD",
- "Circuit_Parts_Transistor",
- "Circuit_Parts_TransistorSMD",
- "Circuit_Parts_Capacitor",
- "Circuit_Parts_CapacitorSMD",
- "Circuit_Silicon_Ingot",
- "Circuit_Silicon_Ingot2",
- "Circuit_Silicon_Ingot3",
- "Circuit_Silicon_Wafer",
- "Circuit_Silicon_Wafer2",
- "Circuit_Silicon_Wafer3",
- "Circuit_Wafer_ILC",
- "Circuit_Chip_ILC",
- "Circuit_Wafer_Ram",
- "Circuit_Chip_Ram",
- "Circuit_Wafer_NAND",
- "Circuit_Chip_NAND",
- "Circuit_Wafer_NOR",
- "Circuit_Chip_NOR",
- "Circuit_Wafer_CPU",
- "Circuit_Chip_CPU",
- "Circuit_Wafer_SoC",
- "Circuit_Chip_SoC",
- "Circuit_Wafer_SoC2",
- "Circuit_Chip_SoC2",
- "Circuit_Wafer_PIC",
- "Circuit_Chip_PIC",
- "Circuit_Wafer_HPIC",
- "Circuit_Chip_HPIC",
- "Circuit_Wafer_NanoCPU",
- "Circuit_Chip_NanoCPU",
- "Circuit_Wafer_QuantumCPU",
- "Circuit_Chip_QuantumCPU",
- "Circuit_Chip_CrystalCPU",
- "Circuit_Chip_CrystalSoC",
- "Circuit_Chip_NeuroCPU",
- "Circuit_Chip_Stemcell",
- "Circuit_Processor",
- "Circuit_Computer",
- "Circuit_Nanoprocessor",
- "Circuit_Nanocomputer",
- "Circuit_Elitenanocomputer",
- "Circuit_Quantumprocessor",
- "Circuit_Quantumcomputer",
- "Circuit_Masterquantumcomputer",
- "Circuit_Quantummainframe",
- "Circuit_Crystalprocessor",
- "Circuit_Crystalcomputer",
- "Circuit_Ultimatecrystalcomputer",
- "Circuit_Crystalmainframe",
- "Circuit_Neuroprocessor",
- "Circuit_Wetwarecomputer",
- "Circuit_Wetwaresupercomputer",
- "Circuit_Wetwaremainframe",
- "Circuit_Parts_RawCrystalChip"
- };
-
- for (String component : CircuitToHide){
- API.hideItem(ItemList.valueOf(component).get(1L, new Object[0]));
- }
-
-
- RECIPES_Old_Circuits.removeNewCircuits();
- }
-
+
return true;
}
}