diff options
Diffstat (limited to 'src/Java/gtPlusPlus/xmod/gregtech/common/helpers/VolumetricFlaskHelper.java')
-rw-r--r-- | src/Java/gtPlusPlus/xmod/gregtech/common/helpers/VolumetricFlaskHelper.java | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/helpers/VolumetricFlaskHelper.java b/src/Java/gtPlusPlus/xmod/gregtech/common/helpers/VolumetricFlaskHelper.java index 76bb378377..a169419fea 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/helpers/VolumetricFlaskHelper.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/helpers/VolumetricFlaskHelper.java @@ -1,9 +1,11 @@ package gtPlusPlus.xmod.gregtech.common.helpers; +import java.lang.reflect.Constructor; import java.lang.reflect.Method; import gtPlusPlus.core.util.minecraft.ItemUtils; import gtPlusPlus.core.util.reflect.ReflectionUtils; +import gtPlusPlus.xmod.gregtech.api.enums.GregtechItemList; import gtPlusPlus.xmod.gregtech.common.Meta_GT_Proxy; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; @@ -25,12 +27,22 @@ public class VolumetricFlaskHelper { sMethodGetFlaskMaxCapacity = null; } } - + public static ItemStack getVolumetricFlask(int aAmount) { ItemStack aFlask = ItemUtils.getValueOfItemList("VOLUMETRIC_FLASK", aAmount, (ItemStack) null); return aFlask; } + public static ItemStack getLargeVolumetricFlask(int aAmount) { + ItemStack aFlask = GregtechItemList.VOLUMETRIC_FLASK_8k.get(aAmount); + return aFlask; + } + + public static ItemStack getGiganticVolumetricFlask(int aAmount) { + ItemStack aFlask = GregtechItemList.VOLUMETRIC_FLASK_64k.get(aAmount); + return aFlask; + } + public static boolean isVolumetricFlask(ItemStack aStack) { if (mFlask == null) { ItemStack aFlask = ItemUtils.getValueOfItemList("VOLUMETRIC_FLASK", 1, (ItemStack) null); @@ -77,5 +89,17 @@ public class VolumetricFlaskHelper { nbt.setInteger("Capacity", aCapacity); return true; } + + public static Item generateNewFlask(String unlocalized, String english, int maxCapacity) { + Constructor aFlask = ReflectionUtils.getConstructor(sClassVolumetricFlask, new Class[] {String.class, String.class, int.class}); + if (aFlask != null) { + Object aInstance = ReflectionUtils.createNewInstanceFromConstructor(aFlask, new Object[] {unlocalized, english, maxCapacity}); + if (aInstance != null && aInstance instanceof Item) { + Item aNewFlaskItem = (Item) aInstance; + return aNewFlaskItem; + } + } + return null; + } } |