aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/Ic2ExpReactorPlanner/ComponentFactory.java16
-rw-r--r--src/main/java/gtPlusPlus/xmod/bartworks/BW_Utils.java81
2 files changed, 17 insertions, 80 deletions
diff --git a/src/main/java/Ic2ExpReactorPlanner/ComponentFactory.java b/src/main/java/Ic2ExpReactorPlanner/ComponentFactory.java
index 6b35efd47b..678bc1b6ef 100644
--- a/src/main/java/Ic2ExpReactorPlanner/ComponentFactory.java
+++ b/src/main/java/Ic2ExpReactorPlanner/ComponentFactory.java
@@ -17,13 +17,14 @@ import Ic2ExpReactorPlanner.components.Plating;
import Ic2ExpReactorPlanner.components.ReactorItem;
import Ic2ExpReactorPlanner.components.Reflector;
import Ic2ExpReactorPlanner.components.Vent;
+
+import com.github.bartimaeusnek.bartworks.system.material.BW_NonMeta_MaterialItems;
+
import gregtech.api.enums.ItemList;
import gregtech.api.objects.GT_ItemStack;
import gregtech.api.util.GT_ModHandler;
import gtPlusPlus.api.objects.Logger;
import gtPlusPlus.core.lib.LoadedMods;
-import gtPlusPlus.xmod.bartworks.BW_Utils;
-import gtPlusPlus.xmod.bartworks.BW_Utils.NonMeta_MaterialItem;
import gtPlusPlus.xmod.goodgenerator.GG_Utils;
import gtPlusPlus.xmod.goodgenerator.GG_Utils.GG_Fuel_Rod;
@@ -563,8 +564,7 @@ public class ComponentFactory {
new FuelRod(
51,
"fuelRodTiberium",
- new GT_ItemStack(
- BW_Utils.getBW_NonMeta_MaterialItems(NonMeta_MaterialItem.TiberiumCell_1, 1)),
+ new GT_ItemStack(BW_NonMeta_MaterialItems.TiberiumCell_1.get(1)),
50e3,
1,
"Bartworks",
@@ -577,8 +577,7 @@ public class ComponentFactory {
new FuelRod(
52,
"dualFuelRodTiberium",
- new GT_ItemStack(
- BW_Utils.getBW_NonMeta_MaterialItems(NonMeta_MaterialItem.TiberiumCell_2, 1)),
+ new GT_ItemStack(BW_NonMeta_MaterialItems.TiberiumCell_2.get(1)),
50e3,
1,
"Bartworks",
@@ -591,8 +590,7 @@ public class ComponentFactory {
new FuelRod(
53,
"quadFuelRodTiberium",
- new GT_ItemStack(
- BW_Utils.getBW_NonMeta_MaterialItems(NonMeta_MaterialItem.TiberiumCell_4, 1)),
+ new GT_ItemStack(BW_NonMeta_MaterialItems.TiberiumCell_4.get(1)),
50e3,
1,
"Bartworks",
@@ -605,7 +603,7 @@ public class ComponentFactory {
new FuelRod(
54,
"fuelRodTheCore",
- new GT_ItemStack(BW_Utils.getBW_NonMeta_MaterialItems(NonMeta_MaterialItem.TheCoreCell, 1)),
+ new GT_ItemStack(BW_NonMeta_MaterialItems.TheCoreCell.get(1)),
100e3,
1,
"Bartworks",
diff --git a/src/main/java/gtPlusPlus/xmod/bartworks/BW_Utils.java b/src/main/java/gtPlusPlus/xmod/bartworks/BW_Utils.java
index fabcc2b6c8..650ecfa55e 100644
--- a/src/main/java/gtPlusPlus/xmod/bartworks/BW_Utils.java
+++ b/src/main/java/gtPlusPlus/xmod/bartworks/BW_Utils.java
@@ -1,88 +1,27 @@
package gtPlusPlus.xmod.bartworks;
-import java.lang.reflect.Field;
-import java.lang.reflect.Method;
import java.util.ArrayList;
-import java.util.Map;
import net.minecraft.item.ItemStack;
+import com.github.bartimaeusnek.bartworks.system.material.BW_NonMeta_MaterialItems;
+import com.github.bartimaeusnek.bartworks.system.material.Werkstoff;
+import com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader;
import gregtech.api.enums.OrePrefixes;
-import gtPlusPlus.core.lib.LoadedMods;
-import gtPlusPlus.core.util.reflect.ReflectionUtils;
public class BW_Utils {
- private static final Method sName;
- private static final Method sGet;
- private static final Class<?> sClassBW_NonMeta_MaterialItems;
- private static final Class<?> Werkstoff;
- private static final Class<?> WerkstoffLoader;
- private static final Map<Short, ?> werkstoffHashMap;
- private static final Method getCorrespondingItemStackUnsafe;
-
- static {
- sName = ReflectionUtils.getMethod(Enum.class, "name");
- sClassBW_NonMeta_MaterialItems = ReflectionUtils
- .getClass("com.github.bartimaeusnek.bartworks.system.material.BW_NonMeta_MaterialItems");
- sGet = ReflectionUtils.getMethod(sClassBW_NonMeta_MaterialItems, "get", long.class, Object[].class);
- Werkstoff = ReflectionUtils.getClass("com.github.bartimaeusnek.bartworks.system.material.Werkstoff");
- WerkstoffLoader = ReflectionUtils
- .getClass("com.github.bartimaeusnek.bartworks.system.material.WerkstoffLoader");
- Field fieldWerkstoffHashMap = ReflectionUtils.getField(Werkstoff, "werkstoffHashMap");
- werkstoffHashMap = ReflectionUtils.getFieldValue(fieldWerkstoffHashMap);
- getCorrespondingItemStackUnsafe = ReflectionUtils
- .getMethod(WerkstoffLoader, "getCorrespondingItemStackUnsafe", OrePrefixes.class, Werkstoff, int.class);
- }
-
- public enum NonMeta_MaterialItem {
- Depleted_Tiberium_1,
- Depleted_Tiberium_2,
- Depleted_Tiberium_4,
- TiberiumCell_1,
- TiberiumCell_2,
- TiberiumCell_4,
- TheCoreCell,
- Depleted_TheCoreCell;
- }
-
- public static ItemStack getBW_NonMeta_MaterialItems(NonMeta_MaterialItem aItem, long aAmount) {
- if (sClassBW_NonMeta_MaterialItems != null && sClassBW_NonMeta_MaterialItems.isEnum()) {
- for (Object obj : sClassBW_NonMeta_MaterialItems.getEnumConstants()) {
- try {
- if (aItem.name().equals(ReflectionUtils.invokeNonBool(obj, sName, new Object[] {}))) {
- return ((ItemStack) ReflectionUtils
- .invokeNonBool(obj, sGet, new Object[] { aAmount, new Object[] {} })).copy();
- }
- } catch (Throwable t) {
- t.printStackTrace();
- }
- }
- }
- return null;
- }
-
public static ArrayList<ItemStack> getAll(int aStackSize) {
- ArrayList<ItemStack> aItems = new ArrayList<ItemStack>();
- aItems.add(getBW_NonMeta_MaterialItems(NonMeta_MaterialItem.TiberiumCell_1, aStackSize));
- aItems.add(getBW_NonMeta_MaterialItems(NonMeta_MaterialItem.TiberiumCell_2, aStackSize));
- aItems.add(getBW_NonMeta_MaterialItems(NonMeta_MaterialItem.TiberiumCell_4, aStackSize));
- aItems.add(getBW_NonMeta_MaterialItems(NonMeta_MaterialItem.TheCoreCell, aStackSize));
+ ArrayList<ItemStack> aItems = new ArrayList<>();
+ aItems.add(BW_NonMeta_MaterialItems.TiberiumCell_1.get(aStackSize));
+ aItems.add(BW_NonMeta_MaterialItems.TiberiumCell_2.get(aStackSize));
+ aItems.add(BW_NonMeta_MaterialItems.TiberiumCell_4.get(aStackSize));
+ aItems.add(BW_NonMeta_MaterialItems.TheCoreCell.get(aStackSize));
return aItems;
}
public static ItemStack getCorrespondingItemStack(OrePrefixes orePrefixes, short werkstoffID, int amount) {
- if (LoadedMods.BartWorks) {
- if (werkstoffHashMap != null) {
- Object werkstoff = werkstoffHashMap.get(werkstoffID);
- if (werkstoff != null) {
- return (ItemStack) ReflectionUtils.invokeNonBool(
- null,
- getCorrespondingItemStackUnsafe,
- new Object[] { orePrefixes, werkstoff, amount });
- }
- }
- }
- return null;
+ return WerkstoffLoader
+ .getCorrespondingItemStackUnsafe(orePrefixes, Werkstoff.werkstoffHashMap.get(werkstoffID), amount);
}
}