aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech')
-rw-r--r--src/main/java/gregtech/api/enums/Materials.java11
-rw-r--r--src/main/java/gregtech/client/GT_TooltipEventHandler.java192
-rw-r--r--src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java107
-rw-r--r--src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java83
4 files changed, 295 insertions, 98 deletions
diff --git a/src/main/java/gregtech/api/enums/Materials.java b/src/main/java/gregtech/api/enums/Materials.java
index 0e270b1d44..60190431cb 100644
--- a/src/main/java/gregtech/api/enums/Materials.java
+++ b/src/main/java/gregtech/api/enums/Materials.java
@@ -9,7 +9,6 @@ import gregtech.api.interfaces.IMaterialHandler;
import gregtech.api.interfaces.ISubTagContainer;
import gregtech.api.objects.GT_FluidStack;
import gregtech.api.objects.MaterialStack;
-import gregtech.api.util.GT_ModHandler;
import gregtech.api.util.GT_OreDictUnificator;
import gregtech.api.util.GT_Utility;
import gregtech.loaders.materialprocessing.ProcessingConfig;
@@ -337,10 +336,12 @@ public class Materials implements IColorModulationContainer, ISubTagContainer {
public static Materials Nano = new Materials( -1, TextureSet.SET_NONE , 1.0F, 0, 0, 0 , 255, 255, 255, 0, "Nano" , "Bio" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Arrays.asList(new TC_AspectStack(TC_Aspects.ELECTRUM, 11)));
public static Materials Piko = new Materials( -1, TextureSet.SET_NONE , 1.0F, 0, 0, 0 , 255, 255, 255, 0, "Piko" , "Bio" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Arrays.asList(new TC_AspectStack(TC_Aspects.ELECTRUM, 12)));
public static Materials Quantum = new Materials( -1, TextureSet.SET_NONE , 1.0F, 0, 0, 0 , 255, 255, 255, 0, "Quantum" , "Bio" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Arrays.asList(new TC_AspectStack(TC_Aspects.ELECTRUM, 13)));
- public static Materials Optical = new Materials( -1, TextureSet.SET_NONE , 1.0F, 0, 0, 0 , 255, 255, 255, 0, "Optical" , "Optical" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Arrays.asList(new TC_AspectStack(TC_Aspects.ELECTRUM, 14)));
- public static Materials Exotic = new Materials( -1, TextureSet.SET_NONE , 1.0F, 0, 0, 0 , 255, 255, 255, 0, "Exotic" , "Exotic" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Arrays.asList(new TC_AspectStack(TC_Aspects.ELECTRUM, 13)));
- public static Materials Cosmic = new Materials( -1, TextureSet.SET_NONE , 1.0F, 0, 0, 0 , 255, 255, 255, 0, "Cosmic" , "Cosmic" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Arrays.asList(new TC_AspectStack(TC_Aspects.ELECTRUM, 14)));
- public static Materials Transcendental = new Materials( -1, TextureSet.SET_NONE , 1.0F, 0, 0, 0 , 255, 255, 255, 0, "Transcendental" , "Transcendental" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Arrays.asList(new TC_AspectStack(TC_Aspects.ELECTRUM, 15)));
+ public static Materials Optical = new Materials( -1, TextureSet.SET_NONE , 1.0F, 0, 0, 0 , 255, 255, 255, 0, "Optical" , "Optical" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Arrays.asList(new TC_AspectStack(TC_Aspects.ELECTRUM, 13)));
+ public static Materials Exotic = new Materials( -1, TextureSet.SET_NONE , 1.0F, 0, 0, 0 , 255, 255, 255, 0, "Exotic" , "Exotic" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Arrays.asList(new TC_AspectStack(TC_Aspects.ELECTRUM, 14)));
+ public static Materials Cosmic = new Materials( -1, TextureSet.SET_NONE , 1.0F, 0, 0, 0 , 255, 255, 255, 0, "Cosmic" , "Cosmic" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Arrays.asList(new TC_AspectStack(TC_Aspects.ELECTRUM, 15)));
+ public static Materials Transcendent = new Materials( -1, TextureSet.SET_NONE , 1.0F, 0, 0, 0 , 255, 255, 255, 0, "Transcendent" , "Transcendent" , 0, 0, -1, 0, false, false, 1, 1, 1, Dyes.dyeLightGray , Arrays.asList(new TC_AspectStack(TC_Aspects.ELECTRUM, 16)));
+
+
/**
* Not possible to determine exact Components
*/
diff --git a/src/main/java/gregtech/client/GT_TooltipEventHandler.java b/src/main/java/gregtech/client/GT_TooltipEventHandler.java
index 1fb4995025..30ef1a396d 100644
--- a/src/main/java/gregtech/client/GT_TooltipEventHandler.java
+++ b/src/main/java/gregtech/client/GT_TooltipEventHandler.java
@@ -1,7 +1,5 @@
package gregtech.client;
-import static net.minecraft.util.EnumChatFormatting.*;
-
import java.util.HashMap;
import java.util.Map;
import java.util.function.Supplier;
@@ -15,52 +13,93 @@ import net.minecraftforge.event.entity.player.ItemTooltipEvent;
import net.minecraftforge.oredict.OreDictionary;
public class GT_TooltipEventHandler {
-
- private static final Map<String, Supplier<String>[]> tooltipMap = new HashMap<>();
-
+
+ private static final Map<String, Supplier<String>> tooltipMap = new HashMap<>();
+
+ private static final String BLACK, DARK_BLUE, DARK_GREEN, DARK_AQUA, DARK_RED, DARK_PURPLE, GOLD, GRAY, DARK_GRAY, BLUE, GREEN, AQUA, RED, LIGHT_PURPLE, YELLOW, WHITE, OBFUSCATED, BOLD, STRIKETHROUGH, UNDERLINE, ITALIC, RESET;
+
+ private static final Supplier<String> NEW_LINE;
+
+ /*
+ * What you can do:
+ * - add simple, unformated text
+ * - add formatted text
+ * Note: you can chain formatting codes but the color must be used first:
+ * e.g. BLACK + ITALIC will create black, italic text but ITALIC + BLACK will only create black text.
+ * - add animated text
+ * - chain multiple static and/or animated text together using chain()
+ * (Although chaining only static text together is pointless, text() is already able to to that)
+ * - add multiple lines by using NEW_LINE (either as String or as Supplier<String>)
+ * Note: formatting only applies for one line
+ * Note: having a NEW_LINE in animated text results in "skipping" of one formatting since NEW_LINE
+ * counts as character but is not displayed
+ *
+ * Note: adding a tooltip to an item multiple times also creates multiple lines (in the same order they were added)
+ *
+ * What you cannot do:
+ * - add a tooltip depending on NBT, tooltips are only mapped to name and meta
+ *
+ * This method is executed on postInit
+ */
public static void init() {
- addOredictTooltip("circuitPrimitive", formattedText("ULV-Tier", RED));
- addOredictTooltip("circuitBasic", formattedText("LV-Tier", DARK_BLUE));
- addOredictTooltip("circuitGood", formattedText("MV-Tier", GRAY));
- addOredictTooltip("circuitAdvanced", formattedText("HV-Tier", GOLD));
- addOredictTooltip("circuitData", formattedText("EV-Tier", DARK_PURPLE));
- addOredictTooltip("circuitElite", formattedText("IV-Tier", DARK_BLUE));
- addOredictTooltip("circuitMaster", formattedText("LuV-Tier", LIGHT_PURPLE));
- addOredictTooltip("circuitUltimate", formattedText("ZPM-Tier", WHITE));
- addOredictTooltip("circuitSuperconductor", formattedText("UV-Tier", AQUA));
- addOredictTooltip("circuitInfinite", formattedText("UHV-Tier", DARK_RED));
- addOredictTooltip("circuitBio", formattedText("UEV-Tier", GREEN));
- //addOredictTooltip("circuitOptical", formattedText("UIV-Tier", DARK_GREEN));
- //addOredictTooltip("circuitExotic", formattedText("UV-Tier", DARK_AQUA));
- //addOredictTooltip("circuitCosmic", animatedString("UXV-Tier", 8, 500, BLACK, BLACK, BLACK, BLACK, BLACK, BLACK, BLACK, BLACK, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE, WHITE));
- //addOredictTooltip("circuitTranscendental", animatedString("MAX-Tier", 1, 80, RED, GOLD, YELLOW, GREEN, AQUA, BLUE, LIGHT_PURPLE));
+
+ // Tooltip tiers for ALL items given the appropriate tier oredict tag.
+ addOredictTooltip("ULV", text(WHITE + "ULV-Tier"));
+ addOredictTooltip("LV" , text(GRAY + "LV-Tier"));
+ addOredictTooltip("MV" , text(GOLD + "MV-Tier"));
+ addOredictTooltip("HV" , text(YELLOW + "HV-Tier"));
+ addOredictTooltip("EV" , text(DARK_GRAY + "EV-Tier"));
+ addOredictTooltip("IV" , text(GREEN + "IV-Tier"));
+ addOredictTooltip("LuV", text(LIGHT_PURPLE + "LuV-Tier"));
+ addOredictTooltip("ZPM", text(AQUA + "ZPM-Tier"));
+ addOredictTooltip("UV" , text(DARK_GREEN + "UV-Tier"));
+ addOredictTooltip("UHV", text(DARK_RED + "UHV-Tier"));
+ addOredictTooltip("UEV", text(DARK_PURPLE + "UEV-Tier"));
+ addOredictTooltip("UIV", text(DARK_BLUE + BOLD + "UIV-Tier"));
+ addOredictTooltip("UMV", text(RED + BOLD + UNDERLINE + "UMV-Tier"));
+ addOredictTooltip("UXV", animatedText("UXV-Tier", 1, 100, DARK_PURPLE + BOLD + UNDERLINE, DARK_RED + UNDERLINE + BOLD));
+ addOredictTooltip("MAX", chain(
+ animatedText("X", 1, 100, LIGHT_PURPLE + BOLD + OBFUSCATED + UNDERLINE, RED + BOLD + OBFUSCATED + UNDERLINE, GOLD + OBFUSCATED + BOLD + UNDERLINE, YELLOW + OBFUSCATED + BOLD + UNDERLINE, GREEN + OBFUSCATED + BOLD + UNDERLINE, AQUA + OBFUSCATED + BOLD + UNDERLINE, BLUE + OBFUSCATED + BOLD + UNDERLINE),
+ animatedText("MAX-Tier", 1, 100, RED + BOLD + UNDERLINE, GOLD + BOLD + UNDERLINE, YELLOW + BOLD + UNDERLINE, GREEN + BOLD + UNDERLINE, AQUA + BOLD + UNDERLINE, BLUE + BOLD + UNDERLINE, LIGHT_PURPLE + BOLD + UNDERLINE),
+ animatedText("X", 1, 100, GOLD + OBFUSCATED + BOLD + UNDERLINE, YELLOW + OBFUSCATED + BOLD + UNDERLINE, GREEN + OBFUSCATED + BOLD + UNDERLINE, AQUA + OBFUSCATED + BOLD + UNDERLINE, BLUE + OBFUSCATED + BOLD + UNDERLINE, LIGHT_PURPLE + OBFUSCATED + BOLD + UNDERLINE, RED + OBFUSCATED + BOLD + UNDERLINE)
+ ));
+
}
-
+
@SubscribeEvent
public void renderTooltip(ItemTooltipEvent event) {
- Supplier<String>[] texts = tooltipMap.get(getStackIdentifier(event.itemStack));
- if(texts == null) return;
- String s = "";
- for(Supplier<String> snippet : texts) {
- s += snippet.get();
+ Supplier<String> tooltip = tooltipMap.get(getStackIdentifier(event.itemStack));
+ if(tooltip != null) {
+ String text = tooltip.get();
+ if(!text.isEmpty()) {
+ for(String line : text.split("\n")) {
+ event.toolTip.add(line);
+ }
+ }
}
- event.toolTip.add(s);
}
-
+
+ @SafeVarargs
+ private static Supplier<String> chain(Supplier<String>... parts) {
+ return () -> {
+ String s = "";
+ for(Supplier<String> text : parts) {
+ s += text.get();
+ }
+ return s;
+ };
+ }
+
private static Supplier<String> text(String text) {
return () -> text;
}
-
- private static Supplier<String> formattedText(String text, EnumChatFormatting formatting){
- return () -> formatting + text;
- }
-
+
/** Taken and adapted from <a href=https://github.com/GTNewHorizons/Avaritia/blob/7b7eaed652f6be320b10f33d8f8e6a04e66ca14f/src/main/java/fox/spiteful/avaritia/LudicrousText.java#L19>Avaritia</a>, licensed under MIT */
- private static Supplier<String> animatedString(String text, int posstep, int delay, EnumChatFormatting... formattingArray) {
- if(text.isEmpty()) return () -> "";
-
+ private static Supplier<String> animatedText(String text, int posstep, int delay, String... formattingArray) {
+ if(text == null || text.isEmpty() || formattingArray == null || formattingArray.length == 0) return () -> "";
+
final int finalDelay = delay = delay <= 0 ? delay = 1 : delay;
-
+
return () -> {
StringBuilder sb = new StringBuilder(text.length() * 3);
int offset = (int) ((System.currentTimeMillis() / finalDelay) % formattingArray.length);
@@ -73,29 +112,76 @@ public class GT_TooltipEventHandler {
return sb.toString();
};
}
-
- @SafeVarargs
- private static void addOredictTooltip(String oredictName, Supplier<String>... tooltips) {
+
+ private static void addOredictTooltip(String oredictName, Supplier<String> tooltip) {
for(ItemStack item : OreDictionary.getOres(oredictName)) {
- addItemTooltip(item, tooltips);
+ addItemTooltip(item, tooltip);
}
}
-
- @SafeVarargs
- private static void addItemTooltip(String modID, String registryName, int meta, Supplier<String>... tooltips) {
+
+ private static void addItemTooltip(String modID, String registryName, int meta, Supplier<String> tooltip) {
Item item = GameRegistry.findItem(modID, registryName);
- if(item == null || meta < 0 || meta >= OreDictionary.WILDCARD_VALUE || tooltips == null) return;
- tooltipMap.put(item.getUnlocalizedName() + "@" + meta, tooltips);
+ if(item == null || meta < 0 || meta >= OreDictionary.WILDCARD_VALUE || tooltip == null) return;
+ String identifier = item.getUnlocalizedName() + "@" + meta;
+ Supplier<String> previous = tooltipMap.get(identifier);
+ if(previous == null) {
+ tooltipMap.put(identifier, tooltip);
+ } else {
+ tooltipMap.put(identifier, chain(previous, NEW_LINE, tooltip));
+ }
}
-
- @SafeVarargs
- private static void addItemTooltip(ItemStack item, Supplier<String>... tooltips) {
- if(item == null || tooltips == null) return;
- tooltipMap.put(getStackIdentifier(item), tooltips);
+
+ private static void addItemTooltip(ItemStack item, Supplier<String> tooltip) {
+ if(item == null || tooltip == null) return;
+ String identifier = getStackIdentifier(item);
+ Supplier<String> previous = tooltipMap.get(identifier);
+ if(previous == null) {
+ tooltipMap.put(identifier, tooltip);
+ } else {
+ tooltipMap.put(identifier, chain(previous, NEW_LINE, tooltip));
+ }
}
-
+
private static String getStackIdentifier(ItemStack stack) {
return stack == null ? "" : stack.getItem().getUnlocalizedName() + "@" + stack.getItemDamage();
}
-}
+ static {
+ AQUA = EnumChatFormatting.AQUA.toString();
+ BLACK = EnumChatFormatting.BLACK.toString();
+ BLUE = EnumChatFormatting.BLUE.toString();
+ BOLD = EnumChatFormatting.BOLD.toString();
+ DARK_AQUA = EnumChatFormatting.DARK_AQUA.toString();
+ DARK_BLUE = EnumChatFormatting.DARK_BLUE.toString();
+ DARK_GRAY = EnumChatFormatting.DARK_GRAY.toString();
+ DARK_GREEN = EnumChatFormatting.DARK_GREEN.toString();
+ DARK_PURPLE = EnumChatFormatting.DARK_PURPLE.toString();
+ DARK_RED = EnumChatFormatting.DARK_RED.toString();
+ GOLD = EnumChatFormatting.GOLD.toString();
+ GRAY = EnumChatFormatting.GRAY.toString();
+ GREEN = EnumChatFormatting.GREEN.toString();
+ ITALIC = EnumChatFormatting.ITALIC.toString();
+ LIGHT_PURPLE = EnumChatFormatting.LIGHT_PURPLE.toString();
+ OBFUSCATED = EnumChatFormatting.OBFUSCATED.toString();
+ RED = EnumChatFormatting.RED.toString();
+ RESET = EnumChatFormatting.RESET.toString();
+ STRIKETHROUGH = EnumChatFormatting.STRIKETHROUGH.toString();
+ UNDERLINE = EnumChatFormatting.UNDERLINE.toString();
+ WHITE = EnumChatFormatting.WHITE.toString();
+ YELLOW = EnumChatFormatting.YELLOW.toString();
+
+ NEW_LINE = new Supplier<String>() {
+
+ @Override
+ public String get() {
+ return "\n";
+ }
+
+ @Override
+ public String toString() {
+ return "\n";
+ }
+ };
+ }
+
+} \ No newline at end of file
diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java
index 9b679c1ff4..625b8fc206 100644
--- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java
+++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_01.java
@@ -34,6 +34,7 @@ import net.minecraft.item.EnumAction;
import net.minecraft.item.ItemStack;
import net.minecraft.potion.Potion;
import net.minecraft.util.MathHelper;
+import net.minecraftforge.oredict.OreDictionary;
import java.util.Collection;
import java.util.HashMap;
@@ -402,44 +403,76 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
GT_ModHandler.addCraftingRecipe(ItemList.Battery_Hull_LV.get(1L), GT_ModHandler.RecipeBits.NOT_REMOVABLE, new Object[]{"Cf ", "Ph ", "Ps ", 'P', OrePrefixes.plate.get(Materials.BatteryAlloy), 'C', OreDictNames.craftingWireTin});
//GT_ModHandler.addCraftingRecipe(ItemList.Battery_Hull_MV.get(1L), GT_ModHandler.RecipeBits.NOT_REMOVABLE, new Object[]{"C C", "PPP", "PPP", 'P', OrePrefixes.plate.get(Materials.BatteryAlloy), 'C', OreDictNames.craftingWireCopper});
- ItemList.Battery_RE_ULV_Tantalum.set(addItem(tLastID = 499, "Tantalum Capacitor", "Reusable", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 1L)));
+ // ULV Batteries
+ ItemList.Battery_RE_ULV_Tantalum.set(addItem(tLastID = 499, "Tantalum Capacitor", "Reusable", "batteryULV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 1L)));
setElectricStats(32000 + tLastID, 1000L, GT_Values.V[0], 0L, -3L, false);
+ OreDictionary.registerOre("ULV", ItemList.Battery_RE_ULV_Tantalum.get(1));
- ItemList.Battery_SU_LV_SulfuricAcid.set(addItem(tLastID = 510, "Small Acid Battery", "Single Use", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 2L)));
+ // LV Batteries
+ ItemList.Battery_SU_LV_SulfuricAcid.set(addItem(tLastID = 510, "Small Acid Battery", "Single Use", "batteryLV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 2L)));
setElectricStats(32000 + tLastID, 18000L, GT_Values.V[1], 1L, -2L, true);
+ OreDictionary.registerOre("LV", ItemList.Battery_SU_LV_SulfuricAcid.get(1));
+
ItemList.Battery_SU_LV_Mercury.set(addItem(tLastID = 511, "Small Mercury Battery", "Single Use", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 2L)));
setElectricStats(32000 + tLastID, 32000L, GT_Values.V[1], 1L, -2L, true);
+ OreDictionary.registerOre("LV", ItemList.Battery_SU_LV_Mercury.get(1));
- ItemList.Battery_RE_LV_Cadmium.set(addItem(tLastID = 517, "Small Cadmium Battery", "Reusable", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 1L), "calclavia:ADVANCED_BATTERY"));
+ ItemList.Battery_RE_LV_Cadmium.set(addItem(tLastID = 517, "Small Cadmium Battery", "Reusable", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 1L), "batteryLV"));
setElectricStats(32000 + tLastID, 75000L, GT_Values.V[1], 1L, -3L, true);
- ItemList.Battery_RE_LV_Lithium.set(addItem(tLastID = 518, "Small Lithium Battery", "Reusable", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 1L), "calclavia:ADVANCED_BATTERY"));
+ OreDictionary.registerOre("LV", ItemList.Battery_RE_LV_Cadmium.get(1));
+ OreDictionary.registerOre("calclavia:ADVANCED_BATTERY", ItemList.Battery_RE_LV_Cadmium.get(1)); // Annoying backwards compat
+
+ ItemList.Battery_RE_LV_Lithium.set(addItem(tLastID = 518, "Small Lithium Battery", "Reusable", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 1L), "batteryLV"));
setElectricStats(32000 + tLastID, 100000L, GT_Values.V[1], 1L, -3L, true);
+ OreDictionary.registerOre("LV", ItemList.Battery_RE_LV_Lithium.get(1));
+ OreDictionary.registerOre("calclavia:ADVANCED_BATTERY", ItemList.Battery_RE_LV_Lithium.get(1)); // Annoying backwards compat
+
ItemList.Battery_RE_LV_Sodium.set(addItem(tLastID = 519, "Small Sodium Battery", "Reusable", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 1L), "calclavia:ADVANCED_BATTERY"));
setElectricStats(32000 + tLastID, 50000L, GT_Values.V[1], 1L, -3L, true);
+ OreDictionary.registerOre("LV", ItemList.Battery_RE_LV_Sodium.get(1));
+ OreDictionary.registerOre("calclavia:ADVANCED_BATTERY", ItemList.Battery_RE_LV_Sodium.get(1)); // Annoying backwards compat
- ItemList.Battery_SU_MV_SulfuricAcid.set(addItem(tLastID = 520, "Medium Acid Battery", "Single Use", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 4L)));
+ // MV Batteries
+ ItemList.Battery_SU_MV_SulfuricAcid.set(addItem(tLastID = 520, "Medium Acid Battery", "Single Use", "batteryMV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 4L)));
setElectricStats(32000 + tLastID, 72000L, GT_Values.V[2], 2L, -2L, true);
- ItemList.Battery_SU_MV_Mercury.set(addItem(tLastID = 521, "Medium Mercury Battery", "Single Use", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 4L)));
+ OreDictionary.registerOre("MV", ItemList.Battery_SU_MV_SulfuricAcid.get(1));
+
+ ItemList.Battery_SU_MV_Mercury.set(addItem(tLastID = 521, "Medium Mercury Battery", "Single Use", "batteryMV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 4L)));
setElectricStats(32000 + tLastID, 128000L, GT_Values.V[2], 2L, -2L, true);
+ OreDictionary.registerOre("MV", ItemList.Battery_SU_MV_Mercury.get(1));
- ItemList.Battery_RE_MV_Cadmium.set(addItem(tLastID = 527, "Medium Cadmium Battery", "Reusable", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 2L)));
+ ItemList.Battery_RE_MV_Cadmium.set(addItem(tLastID = 527, "Medium Cadmium Battery", "Reusable", "batteryMV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 2L)));
setElectricStats(32000 + tLastID, 300000L, GT_Values.V[2], 2L, -3L, true);
- ItemList.Battery_RE_MV_Lithium.set(addItem(tLastID = 528, "Medium Lithium Battery", "Reusable", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 2L)));
+ OreDictionary.registerOre("MV", ItemList.Battery_RE_MV_Cadmium.get(1));
+
+ ItemList.Battery_RE_MV_Lithium.set(addItem(tLastID = 528, "Medium Lithium Battery", "Reusable", "batteryMV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 2L)));
setElectricStats(32000 + tLastID, 400000L, GT_Values.V[2], 2L, -3L, true);
- ItemList.Battery_RE_MV_Sodium.set(addItem(tLastID = 529, "Medium Sodium Battery", "Reusable", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 2L)));
+ OreDictionary.registerOre("MV", ItemList.Battery_RE_MV_Lithium.get(1));
+
+ ItemList.Battery_RE_MV_Sodium.set(addItem(tLastID = 529, "Medium Sodium Battery", "Reusable", "batteryMV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 2L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 2L)));
setElectricStats(32000 + tLastID, 200000L, GT_Values.V[2], 2L, -3L, true);
+ OreDictionary.registerOre("MV", ItemList.Battery_RE_MV_Sodium.get(1));
- ItemList.Battery_SU_HV_SulfuricAcid.set(addItem(tLastID = 530, "Large Acid Battery", "Single Use", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 8L)));
+ // HV Batteries
+ ItemList.Battery_SU_HV_SulfuricAcid.set(addItem(tLastID = 530, "Large Acid Battery", "Single Use", "batteryHV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 8L)));
setElectricStats(32000 + tLastID, 288000L, GT_Values.V[3], 3L, -2L, true);
- ItemList.Battery_SU_HV_Mercury.set(addItem(tLastID = 531, "Large Mercury Battery", "Single Use", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 8L)));
+ OreDictionary.registerOre("HV", ItemList.Battery_SU_HV_SulfuricAcid.get(1));
+
+ ItemList.Battery_SU_HV_Mercury.set(addItem(tLastID = 531, "Large Mercury Battery", "Single Use", "batteryHV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 8L)));
setElectricStats(32000 + tLastID, 512000L, GT_Values.V[3], 3L, -2L, true);
+ OreDictionary.registerOre("HV", ItemList.Battery_SU_HV_Mercury.get(1));
- ItemList.Battery_RE_HV_Cadmium.set(addItem(tLastID = 537, "Large Cadmium Battery", "Reusable", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 4L)));
+ ItemList.Battery_RE_HV_Cadmium.set(addItem(tLastID = 537, "Large Cadmium Battery", "Reusable", "batteryHV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 4L)));
setElectricStats(32000 + tLastID, 1200000L, GT_Values.V[3], 3L, -3L, true);
- ItemList.Battery_RE_HV_Lithium.set(addItem(tLastID = 538, "Large Lithium Battery", "Reusable", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 4L)));
+ OreDictionary.registerOre("HV", ItemList.Battery_RE_HV_Cadmium.get(1));
+
+ ItemList.Battery_RE_HV_Lithium.set(addItem(tLastID = 538, "Large Lithium Battery", "Reusable", "batteryHV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 4L)));
setElectricStats(32000 + tLastID, 1600000L, GT_Values.V[3], 3L, -3L, true);
- ItemList.Battery_RE_HV_Sodium.set(addItem(tLastID = 539, "Large Sodium Battery", "Reusable", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 4L)));
+ OreDictionary.registerOre("HV", ItemList.Battery_RE_HV_Lithium.get(1));
+
+ ItemList.Battery_RE_HV_Sodium.set(addItem(tLastID = 539, "Large Sodium Battery", "Reusable", "batteryHV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.METALLUM, 4L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 4L)));
setElectricStats(32000 + tLastID, 800000L, GT_Values.V[3], 3L, -3L, true);
+ OreDictionary.registerOre("HV", ItemList.Battery_RE_HV_Sodium.get(1));
GT_ModHandler.addExtractionRecipe(ItemList.Battery_SU_LV_SulfuricAcid.get(1L), ItemList.Battery_Hull_LV.get(1L));
GT_ModHandler.addExtractionRecipe(ItemList.Battery_SU_LV_Mercury.get(1L), ItemList.Battery_Hull_LV.get(1L));
@@ -467,26 +500,40 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
GT_Values.RA.addCannerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Lithium, 32L), ItemList.Battery_Hull_HV.get(1L), ItemList.Battery_RE_HV_Lithium.get(1L), null, 1600, 2);
GT_Values.RA.addCannerRecipe(GT_OreDictUnificator.get(OrePrefixes.dust, Materials.Sodium, 32L), ItemList.Battery_Hull_HV.get(1L), ItemList.Battery_RE_HV_Sodium.get(1L), null, 1600, 2);
- ItemList.Energy_LapotronicOrb.set(addItem(tLastID = 597, "Lapotronic Energy Orb", "Reusable battery", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 16L), OrePrefixes.battery.get(Materials.Ultimate)));
+ // EV Battery
+ ItemList.Energy_LapotronicOrb.set(addItem(tLastID = 597, "Lapotronic Energy Orb", "Reusable battery", "batteryIV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 16L), OrePrefixes.battery.get(Materials.Ultimate)));
setElectricStats(32000 + tLastID, 100000000L, GT_Values.V[5], 5L, -3L, true);
+ OreDictionary.registerOre("EV", ItemList.Energy_LapotronicOrb.get(1));
- ItemList.ZPM.set(addItem(tLastID = 598, "Zero Point Module", "Single use battery", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 64L), new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 64L)));
+ // ZPM Module
+ ItemList.ZPM.set(addItem(tLastID = 598, "Zero Point Module", "Single use battery", "batteryZPM", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 64L), new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 64L)));
setElectricStats(32000 + tLastID, 2000000000000L, GT_Values.V[7], 7L, -2L, true);
+ OreDictionary.registerOre("ZPM", ItemList.ZPM.get(1));
- ItemList.Energy_LapotronicOrb2.set(addItem(tLastID = 599, "Lapotronic Energy Orb Cluster", "Reusable battery", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 16L), OrePrefixes.battery.get(Materials.Ultimate)));
+ // LuV Lapotron orb cluster battery
+ ItemList.Energy_LapotronicOrb2.set(addItem(tLastID = 599, "Lapotronic Energy Orb Cluster", "Reusable battery", "batteryLuV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 16L), OrePrefixes.battery.get(Materials.Ultimate)));
setElectricStats(32000 + tLastID, 1000000000L, GT_Values.V[6], 6L, -3L, true);
+ OreDictionary.registerOre("LuV", ItemList.Energy_LapotronicOrb2.get(1));
- ItemList.ZPM2.set(addItem(tLastID = 605, "Ultimate Battery", "Fill this to win minecraft", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 64L), new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 64L)));
+ // UV Battery
+ ItemList.ZPM2.set(addItem(tLastID = 605, "Ultimate Battery", "Fill this to win minecraft", "batteryUV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 64L), new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 64L)));
setElectricStats(32000 + tLastID, Long.MAX_VALUE, GT_Values.V[8], 8L, -3L, true);
+ OreDictionary.registerOre("UV", ItemList.ZPM2.get(1));
- ItemList.ZPM3.set(addItem(tLastID = 609, "Really Ultimate Battery", "Fill this to be way older", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 64L), new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 64L)));
+ // UMV Battery
+ ItemList.ZPM3.set(addItem(tLastID = 609, "Really Ultimate Battery", "Fill this to be way older", "batteryUMV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 64L), new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 64L)));
setElectricStats(32000 + tLastID, Long.MAX_VALUE, GT_Values.V[12], 12L, -3L, true);
+ OreDictionary.registerOre("UMV", ItemList.ZPM3.get(1));
- ItemList.Energy_Module.set(addItem(tLastID = 736, "Energy Module", "Reusable battery", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 16L), OrePrefixes.battery.get(Materials.Ultimate)));
+ // ZPM Cluster
+ ItemList.Energy_Module.set(addItem(tLastID = 736, "Energy Module", "Reusable battery", "batteryZPM", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 16L), OrePrefixes.battery.get(Materials.Ultimate)));
setElectricStats(32000 + tLastID, 10000000000L, GT_Values.V[7], 7L, -3L, true);
+ OreDictionary.registerOre("ZPM", ItemList.Energy_Module.get(1));
- ItemList.Energy_Cluster.set(addItem(tLastID = 737, "Energy Cluster", "Reusable battery", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 64L), new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 64L)));
+ // UV Cluster
+ ItemList.Energy_Cluster.set(addItem(tLastID = 737, "Energy Cluster", "Reusable battery", "batteryUV", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 64L), new TC_Aspects.TC_AspectStack(TC_Aspects.VITREUS, 16L), new TC_Aspects.TC_AspectStack(TC_Aspects.POTENTIA, 64L)));
setElectricStats(32000 + tLastID, 100000000000L, GT_Values.V[8], 8L, -3L, true);
+ OreDictionary.registerOre("UV", ItemList.Energy_Cluster.get(1));
// UIV, UMV, UXV and MAX component textures backported from gregicality.
ItemList.Electric_Motor_LV.set(addItem(600, "Electric Motor (LV)", "", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 1L), new TC_Aspects.TC_AspectStack(TC_Aspects.MOTUS, 1L)));
@@ -720,18 +767,28 @@ public class GT_MetaGenerated_Item_01 extends GT_MetaGenerated_Item_X32 {
ItemList.Field_Generator_UMV.set(addItem(46, "Field Generator (UMV)", "", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1024L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 512L), new TC_Aspects.TC_AspectStack(TC_Aspects.TUTAMEN, 512L)));
ItemList.Field_Generator_UXV.set(addItem(47, "Field Generator (UXV)", "", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1024L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 512L), new TC_Aspects.TC_AspectStack(TC_Aspects.TUTAMEN, 512L)));
ItemList.Field_Generator_MAX.set(addItem(48, "Field Generator (MAX)", "", new TC_Aspects.TC_AspectStack(TC_Aspects.ELECTRUM, 1024L), new TC_Aspects.TC_AspectStack(TC_Aspects.MACHINA, 512L), new TC_Aspects.TC_AspectStack(TC_Aspects.TUTAMEN, 512L)));
-
+
+ // Circuits ULV - LuV.
ItemList.Circuit_Primitive.set(addItem(tLastID = 700, "Vacuum Tube", "A very simple Circuit", OrePrefixes.circuit.get(Materials.Primitive), SubTag.NO_UNIFICATION));
- ItemList.Circuit_Parts_Vacuum_Tube.set(ItemList.Circuit_Primitive.get(1));
+ OreDictionary.registerOre("ULV" , ItemList.Circuit_Primitive.get(1));
ItemList.Circuit_Basic.set(addItem(tLastID = 701, "Integrated Logic Circuit", "A Basic Circuit", OrePrefixes.circuit.get(Materials.Basic), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("LV" , ItemList.Circuit_Basic.get(1));
ItemList.Circuit_Good.set(addItem(tLastID = 702, "Good Electronic Circuit", "A Good Circuit", OrePrefixes.circuit.get(Materials.Good), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("MV" , ItemList.Circuit_Good.get(1));
ItemList.Circuit_Advanced.set(addItem(tLastID = 703, "Processor Assembly", "An Advanced Circuit", OrePrefixes.circuit.get(Materials.Advanced), SubTag.NO_UNIFICATION));
- ItemList.Circuit_Computer.set(ItemList.Circuit_Advanced.get(1));
+ OreDictionary.registerOre("HV" , ItemList.Circuit_Advanced.get(1));
ItemList.Circuit_Data.set(addItem(tLastID = 704, "Workstation", "An Extreme Circuit", OrePrefixes.circuit.get(Materials.Data), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("EV" , ItemList.Circuit_Data.get(1));
ItemList.Circuit_Elite.set(addItem(tLastID = 705, "Mainframe", "An Elite Circuit", OrePrefixes.circuit.get(Materials.Elite), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("IV" , ItemList.Circuit_Elite.get(1));
ItemList.Circuit_Master.set(addItem(tLastID = 706, "Nanoprocessor Mainframe", "A Master Circuit", OrePrefixes.circuit.get(Materials.Master), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("LuV" , ItemList.Circuit_Master.get(1));
+
+ // Backwards compatibility.
+ ItemList.Circuit_Parts_Vacuum_Tube.set(ItemList.Circuit_Primitive.get(1));
+ ItemList.Circuit_Computer.set(ItemList.Circuit_Advanced.get(1));
+
ItemList.Tool_DataOrb.set(addItem(tLastID = 707, "Data Orb", "A High Capacity Data Storage", SubTag.NO_UNIFICATION, new Behaviour_DataOrb()));
- //ItemList.Circuit_Ultimate.set(ItemList.Tool_DataOrb.get(1L, new Object[0]));
GT_ModHandler.addShapelessCraftingRecipe(ItemList.Tool_DataOrb.get(1L), GT_ModHandler.RecipeBits.NOT_REMOVABLE, new Object[]{ItemList.Tool_DataOrb.get(1L)});
ItemList.Tool_DataStick.set(addItem(tLastID = 708, "Data Stick", "A Low Capacity Data Storage", SubTag.NO_UNIFICATION, new Behaviour_DataStick()));
GT_ModHandler.addShapelessCraftingRecipe(ItemList.Tool_DataStick.get(1L), GT_ModHandler.RecipeBits.NOT_REMOVABLE, new Object[]{ItemList.Tool_DataStick.get(1L)});
diff --git a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java
index 530468891e..d227406caa 100644
--- a/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java
+++ b/src/main/java/gregtech/common/items/GT_MetaGenerated_Item_03.java
@@ -1,5 +1,6 @@
package gregtech.common.items;
+import cpw.mods.fml.common.registry.GameRegistry;
import gregtech.api.GregTech_API;
import gregtech.api.enums.ItemList;
import gregtech.api.enums.Materials;
@@ -8,7 +9,9 @@ import gregtech.api.enums.SubTag;
import gregtech.api.enums.TC_Aspects;
import gregtech.api.items.GT_MetaGenerated_Item_X32;
import gregtech.api.render.TextureFactory;
+import gregtech.api.util.GT_ModHandler;
import gregtech.common.covers.GT_Cover_SolarPanel;
+import net.minecraftforge.oredict.OreDictionary;
import static gregtech.api.enums.Textures.BlockIcons.SOLARPANEL_UEV;
import static gregtech.api.enums.Textures.BlockIcons.SOLARPANEL_UHV;
@@ -170,46 +173,76 @@ public class GT_MetaGenerated_Item_03
//Nand Chip
ItemList.NandChip.set(addItem(tLastID = 75, "NAND Chip", "A very simple Circuit", OrePrefixes.circuit.get(Materials.Primitive), SubTag.NO_UNIFICATION));
-
+ OreDictionary.registerOre("ULV" , ItemList.NandChip.get(1));
//Vacuum Tube Item01
//Basic Circuit IC2
//Good Circuit Item01
//Integrated Logic Circuit Item01
ItemList.Circuit_Integrated_Good.set(addItem(tLastID = 79, "Good Integrated Circuit", "Good Circuit", OrePrefixes.circuit.get(Materials.Good), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("MV" , ItemList.Circuit_Integrated_Good.get(1));
//Good Integrated Circuit Item01
//Advanced Circuit IC2
ItemList.Circuit_Microprocessor.set(addItem(tLastID = 78, "Microprocessor", "A Basic Circuit", OrePrefixes.circuit.get(Materials.Basic), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("LV" , ItemList.Circuit_Microprocessor.get(1));
ItemList.Circuit_Processor.set(addItem(tLastID = 80, "Integrated Processor", "A Good Circuit", OrePrefixes.circuit.get(Materials.Good), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("MV" , ItemList.Circuit_Processor.get(1));
//ItemList.Circuit_Computer.set(addItem(tLastID = 81, "Processor Assembly", "Advanced Circuit", new Object[]{OrePrefixes.circuit.get(Materials.Advanced), SubTag.NO_UNIFICATION}));
//Workstation/ Item01 Datacircuit
//Mainframe Item01 DataProcessor
ItemList.Circuit_Nanoprocessor.set(addItem(tLastID = 82, "Nanoprocessor", "An Advanced Circuit", OrePrefixes.circuit.get(Materials.Advanced), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("HV" , ItemList.Circuit_Nanoprocessor.get(1));
ItemList.Circuit_Nanocomputer.set(addItem(tLastID = 83, "Nanoprocessor Assembly", "An Extreme Circuit", OrePrefixes.circuit.get(Materials.Data), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("EV" , ItemList.Circuit_Nanocomputer.get(1));
ItemList.Circuit_Elitenanocomputer.set(addItem(tLastID = 84, "Elite Nanocomputer", "An Elite Circuit", OrePrefixes.circuit.get(Materials.Elite), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("IV" , ItemList.Circuit_Elitenanocomputer.get(1));
//Nanoprocessor Mainframe Item01 Energy Flow Circuit
+ // Quantum circuits
ItemList.Circuit_Quantumprocessor.set(addItem(tLastID = 85, "Quantumprocessor", "An Extreme Circuit", OrePrefixes.circuit.get(Materials.Data), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("EV" , ItemList.Circuit_Quantumprocessor.get(1));
ItemList.Circuit_Quantumcomputer.set(addItem(tLastID = 86, "Quantumprocessor Assembly", "An Elite Circuit", OrePrefixes.circuit.get(Materials.Elite), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("IV" , ItemList.Circuit_Quantumcomputer.get(1));
ItemList.Circuit_Masterquantumcomputer.set(addItem(tLastID = 87, "Master Quantumcomputer", "A Master Circuit", OrePrefixes.circuit.get(Materials.Master), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("LuV" , ItemList.Circuit_Masterquantumcomputer.get(1));
ItemList.Circuit_Quantummainframe.set(addItem(tLastID = 88, "Quantumprocessor Mainframe", "An Ultimate Circuit", OrePrefixes.circuit.get(Materials.Ultimate), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("ZPM" , ItemList.Circuit_Quantummainframe.get(1));
+
+ // Crystal circuits
ItemList.Circuit_Crystalprocessor.set(addItem(tLastID = 89, "Crystalprocessor", "An Elite Circuit", OrePrefixes.circuit.get(Materials.Elite), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("IV" , ItemList.Circuit_Crystalprocessor.get(1));
ItemList.Circuit_Crystalcomputer.set(addItem(tLastID = 96, "Crystalprocessor Assembly", "A Master Circuit", OrePrefixes.circuit.get(Materials.Master), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("LuV", ItemList.Circuit_Crystalcomputer.get(1));
ItemList.Circuit_Ultimatecrystalcomputer.set(addItem(tLastID = 90, "Ultimate Crystalcomputer", "An Ultimate Circuit", OrePrefixes.circuit.get(Materials.Ultimate), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("ZPM", ItemList.Circuit_Ultimatecrystalcomputer.get(1));
ItemList.Circuit_Crystalmainframe.set(addItem(tLastID = 91, "Crystalprocessor Mainframe", "A Super Circuit", OrePrefixes.circuit.get(Materials.Superconductor), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UV" , ItemList.Circuit_Crystalmainframe.get(1));
+
+ // ???? Scared to remove.
+ ItemList.Circuit_Ultimate.set(ItemList.Circuit_Ultimatecrystalcomputer.get(1L)); //maybe should be removed
+ // Wetware circuits
ItemList.Circuit_Neuroprocessor.set(addItem(tLastID = 92, "Wetwareprocessor", "A Master Circuit", OrePrefixes.circuit.get(Materials.Master), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("LuV", ItemList.Circuit_Neuroprocessor.get(1));
ItemList.Circuit_Wetwarecomputer.set(addItem(tLastID = 93, "Wetwareprocessor Assembly", "An Ultimate Circuit", OrePrefixes.circuit.get(Materials.Ultimate), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("ZPM", ItemList.Circuit_Wetwarecomputer.get(1));
ItemList.Circuit_Wetwaresupercomputer.set(addItem(tLastID = 94, "Wetware Supercomputer", "A Super Circuit", OrePrefixes.circuit.get(Materials.Superconductor), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UV", ItemList.Circuit_Wetwaresupercomputer.get(1));
ItemList.Circuit_Wetwaremainframe.set(addItem(tLastID = 95, "Wetware Mainframe", "An Infinite Circuit", OrePrefixes.circuit.get(Materials.Infinite), SubTag.NO_UNIFICATION));
- ItemList.Circuit_Ultimate.set(ItemList.Circuit_Ultimatecrystalcomputer.get(1L));//maybe should be removed
- ItemList.Circuit_Biowarecomputer.set(addItem(tLastID = 98, "Biowareprocessor Assembly", "A Super Circuit", OrePrefixes.circuit.get(Materials.Superconductor), SubTag.NO_UNIFICATION));
- ItemList.Circuit_Biowaresupercomputer.set(addItem(tLastID = 99, "Bioware Supercomputer", "An Infinite Circuit", OrePrefixes.circuit.get(Materials.Infinite), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UHV", ItemList.Circuit_Wetwaremainframe.get(1));
+ // Bioware circuits.
ItemList.Circuit_Bioprocessor.set(addItem(tLastID = 97, "Bioprocessor", "An Ultimate Circuit", OrePrefixes.circuit.get(Materials.Ultimate), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("ZPM", ItemList.Circuit_Bioprocessor.get(1));
+ ItemList.Circuit_Biowarecomputer.set(addItem(tLastID = 98, "Biowareprocessor Assembly", "A Super Circuit", OrePrefixes.circuit.get(Materials.Superconductor), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UV", ItemList.Circuit_Biowarecomputer.get(1));
+ ItemList.Circuit_Biowaresupercomputer.set(addItem(tLastID = 99, "Bioware Supercomputer", "An Infinite Circuit", OrePrefixes.circuit.get(Materials.Infinite), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UHV", ItemList.Circuit_Biowaresupercomputer.get(1));
+ ItemList.Circuit_Biomainframe.set(addItem(tLastID = 120, "Bio Mainframe", "A Bio Circuit", OrePrefixes.circuit.get(Materials.Bio), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UEV", ItemList.Circuit_Biomainframe.get(1));
ItemList.Circuit_Board_Coated_Basic.set(addItem(tLastID = 100, "Circuit Board", "A basic Circuit Board", o));
ItemList.Circuit_Board_Phenolic_Good.set(addItem(tLastID = 101, "Good Circuit Board", "A good Circuit Board", o));
@@ -219,27 +252,47 @@ public class GT_MetaGenerated_Item_03
ItemList.Circuit_Board_Wetware_Extreme.set(addItem(tLastID = 105, "Extreme Wetware Lifesupport Circuit Board", "The Board that keeps life", o));
ItemList.Circuit_Board_Plastic_Advanced.set(addItem(tLastID = 106, "Plastic Circuit Board", "A good Board", o));
ItemList.Circuit_Board_Bio_Ultra.set(addItem(tLastID = 107, "Ultra Bio Mutated Circuit Board", "Bio genetic mutated Board", o));
- ItemList.Circuit_Biomainframe.set(addItem(tLastID = 120, "Bio Mainframe", "A Bio Circuit", OrePrefixes.circuit.get(Materials.Bio), SubTag.NO_UNIFICATION));
- ItemList.Circuit_OpticalProcessor.set(addItem(tLastID = 154, "Optical Processor", "An Optical Circuit", OrePrefixes.circuit.get(Materials.Optical), SubTag.NO_UNIFICATION));
- ItemList.Circuit_OpticalAssembly.set(addItem(tLastID = 155, "Optical Assembly", "An Optical Circuit", OrePrefixes.circuit.get(Materials.Optical), SubTag.NO_UNIFICATION));
- ItemList.Circuit_OpticalComputer.set(addItem(tLastID = 156, "Optical Computer", "An Optical Circuit", OrePrefixes.circuit.get(Materials.Optical), SubTag.NO_UNIFICATION));
+ // Optical circuits
+ ItemList.Circuit_OpticalProcessor.set(addItem(tLastID = 154, "Optical Processor", "An Optical Circuit", OrePrefixes.circuit.get(Materials.Ultimate), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UV", ItemList.Circuit_OpticalProcessor.get(1));
+ ItemList.Circuit_OpticalAssembly.set(addItem(tLastID = 155, "Optical Assembly", "An Optical Circuit", OrePrefixes.circuit.get(Materials.Infinite), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UHV", ItemList.Circuit_OpticalAssembly.get(1));
+ ItemList.Circuit_OpticalComputer.set(addItem(tLastID = 156, "Optical Computer", "An Optical Circuit", OrePrefixes.circuit.get(Materials.Bio), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UEV", ItemList.Circuit_OpticalComputer.get(1));
ItemList.Circuit_OpticalMainframe.set(addItem(tLastID = 157, "Optical Mainframe", "An Optical Circuit", OrePrefixes.circuit.get(Materials.Optical), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UIV", ItemList.Circuit_OpticalMainframe.get(1));
- ItemList.Circuit_ExoticProcessor.set(addItem(tLastID = 166, "Exotic Processor", "An Exotic Circuit", OrePrefixes.circuit.get(Materials.Exotic), SubTag.NO_UNIFICATION));
- ItemList.Circuit_ExoticAssembly.set(addItem(tLastID = 167, "Exotic Assembly", "An Exotic Circuit", OrePrefixes.circuit.get(Materials.Exotic), SubTag.NO_UNIFICATION));
+
+ // Exotic circuits
+ ItemList.Circuit_ExoticProcessor.set(addItem(tLastID = 166, "Exotic Processor", "An Exotic Circuit", OrePrefixes.circuit.get(Materials.Infinite), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UHV", ItemList.Circuit_ExoticProcessor.get(1));
+ ItemList.Circuit_ExoticAssembly.set(addItem(tLastID = 167, "Exotic Assembly", "An Exotic Circuit", OrePrefixes.circuit.get(Materials.Bio), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UEV", ItemList.Circuit_ExoticAssembly.get(1));
ItemList.Circuit_ExoticComputer.set(addItem(tLastID = 168, "Exotic Computer", "An Exotic Circuit", OrePrefixes.circuit.get(Materials.Exotic), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UIV", ItemList.Circuit_ExoticComputer.get(1));
ItemList.Circuit_ExoticMainframe.set(addItem(tLastID = 169, "Exotic Mainframe", "An Exotic Circuit", OrePrefixes.circuit.get(Materials.Exotic), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UMV", ItemList.Circuit_ExoticMainframe.get(1));
+ // Cosmic circuits
ItemList.Circuit_CosmicProcessor.set(addItem(tLastID = 170, "Cosmic Processor", "A Cosmic Circuit", OrePrefixes.circuit.get(Materials.Cosmic), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UEV", ItemList.Circuit_CosmicProcessor.get(1));
ItemList.Circuit_CosmicAssembly.set(addItem(tLastID = 171, "Cosmic Assembly", "A Cosmic Circuit", OrePrefixes.circuit.get(Materials.Cosmic), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UIV", ItemList.Circuit_CosmicAssembly.get(1));
ItemList.Circuit_CosmicComputer.set(addItem(tLastID = 172, "Cosmic Computer", "A Cosmic Circuit", OrePrefixes.circuit.get(Materials.Cosmic), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UMV", ItemList.Circuit_CosmicComputer.get(1));
ItemList.Circuit_CosmicMainframe.set(addItem(tLastID = 173, "Cosmic Mainframe", "A Cosmic Circuit", OrePrefixes.circuit.get(Materials.Cosmic), SubTag.NO_UNIFICATION));
-
- ItemList.Circuit_TranscendentProcessor.set(addItem(tLastID = 174, "Temporally Transcendent Processor", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Transcendental), SubTag.NO_UNIFICATION));
- ItemList.Circuit_TranscendentAssembly.set(addItem(tLastID = 175, "Temporally Transcendent Assembly", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Transcendental), SubTag.NO_UNIFICATION));
- ItemList.Circuit_TranscendentComputer.set(addItem(tLastID = 176, "Temporally Transcendent Computer", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Transcendental), SubTag.NO_UNIFICATION));
- ItemList.Circuit_TranscendentMainframe.set(addItem(tLastID = 177, "Temporally Transcendent Mainframe", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Transcendental), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UXV", ItemList.Circuit_CosmicMainframe.get(1));
+
+ // Transcendent circuits
+ ItemList.Circuit_TranscendentProcessor.set(addItem(tLastID = 174, "Temporally Transcendent Processor", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Transcendent), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UIV", ItemList.Circuit_TranscendentProcessor.get(1));
+ ItemList.Circuit_TranscendentAssembly.set(addItem(tLastID = 175, "Temporally Transcendent Assembly", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Transcendent), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UMV", ItemList.Circuit_TranscendentAssembly.get(1));
+ ItemList.Circuit_TranscendentComputer.set(addItem(tLastID = 176, "Temporally Transcendent Computer", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Transcendent), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("UXV", ItemList.Circuit_TranscendentComputer.get(1));
+ ItemList.Circuit_TranscendentMainframe.set(addItem(tLastID = 177, "Temporally Transcendent Mainframe", "A circuit operating outside of known spacetime", OrePrefixes.circuit.get(Materials.Transcendent), SubTag.NO_UNIFICATION));
+ OreDictionary.registerOre("MAX", ItemList.Circuit_TranscendentMainframe.get(1));
ItemList.Tube_Wires.set(addItem(tLastID = 110, "Tube Wires", "For the Vacuum Tubes", o));