aboutsummaryrefslogtreecommitdiff
path: root/src/Java/miscutil/core
diff options
context:
space:
mode:
authorDraknyte1 <Draknyte1@hotmail.com>2016-09-03 00:20:34 +1000
committerDraknyte1 <Draknyte1@hotmail.com>2016-09-03 00:20:34 +1000
commitbc9493797fdce14ae379ad68f4f501fa63d597d6 (patch)
treeb6052a18a0c83363d2b3acdc8d443dd318dda03e /src/Java/miscutil/core
parent08dd5df42240eef5f8d07c3b154d143d6e29ba1a (diff)
downloadGT5-Unofficial-bc9493797fdce14ae379ad68f4f501fa63d597d6.tar.gz
GT5-Unofficial-bc9493797fdce14ae379ad68f4f501fa63d597d6.tar.bz2
GT5-Unofficial-bc9493797fdce14ae379ad68f4f501fa63d597d6.zip
+ Final work on fluid cells for now.
> They should all work fine, with names and icons.
Diffstat (limited to 'src/Java/miscutil/core')
-rw-r--r--src/Java/miscutil/core/util/Utils.java19
-rw-r--r--src/Java/miscutil/core/util/item/UtilsItems.java8
2 files changed, 25 insertions, 2 deletions
diff --git a/src/Java/miscutil/core/util/Utils.java b/src/Java/miscutil/core/util/Utils.java
index d28598affc..02363927a1 100644
--- a/src/Java/miscutil/core/util/Utils.java
+++ b/src/Java/miscutil/core/util/Utils.java
@@ -22,6 +22,8 @@ import java.util.UUID;
import miscutil.MiscUtils;
import miscutil.core.lib.CORE;
+import miscutil.core.util.fluid.FluidUtils;
+import miscutil.core.util.item.UtilsItems;
import miscutil.core.util.math.MathUtils;
import net.minecraft.block.Block;
import net.minecraft.entity.Entity;
@@ -36,6 +38,7 @@ import net.minecraft.util.MathHelper;
import net.minecraft.world.World;
import net.minecraft.world.biome.BiomeGenBase;
import net.minecraftforge.common.util.EnumHelper;
+import net.minecraftforge.fluids.FluidContainerRegistry;
import net.minecraftforge.fluids.FluidRegistry;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.oredict.OreDictionary;
@@ -466,18 +469,30 @@ public class Utils {
return false;
}
+ private static short cellID = 15;
public static ItemStack createInternalNameAndFluidCell(String s){
+ Utils.LOG_WARNING("1");
InternalName yourName = EnumHelper.addEnum(InternalName.class, s, new Class[0], new Object[0]);
+ Utils.LOG_WARNING("2 "+yourName.name());
ItemCell item = (ItemCell)Ic2Items.cell.getItem();
+ Utils.LOG_WARNING("3 "+item.getUnlocalizedName());
try
{
+ Utils.LOG_WARNING("4");
Class<? extends ItemCell> clz = item.getClass();
+ Utils.LOG_WARNING("5 "+clz.getSimpleName());
Method methode = clz.getDeclaredMethod("addCell", int.class, InternalName.class, Block[].class);
+ Utils.LOG_WARNING("6 "+methode.getName());
methode.setAccessible(true);
- return (ItemStack) methode.invoke(item, 1000, yourName, new Block[0]);
+ Utils.LOG_WARNING("7 "+methode.isAccessible());
+ ItemStack temp = (ItemStack) methode.invoke(item, cellID++, yourName, new Block[0]);
+ Utils.LOG_INFO("8 "+temp.getDisplayName());
+ FluidContainerRegistry.registerFluidContainer(FluidUtils.getFluidStack(s.toLowerCase(), 0), temp.copy(), Ic2Items.cell.copy());
+ UtilsItems.addItemToOreDictionary(temp.copy(), "cell"+s);
+ return temp;
}
catch(Exception e){
-
+ e.printStackTrace();
}
return null;
}
diff --git a/src/Java/miscutil/core/util/item/UtilsItems.java b/src/Java/miscutil/core/util/item/UtilsItems.java
index 8b1772305b..bb74234a51 100644
--- a/src/Java/miscutil/core/util/item/UtilsItems.java
+++ b/src/Java/miscutil/core/util/item/UtilsItems.java
@@ -101,6 +101,14 @@ public class UtilsItems {
Utils.LOG_ERROR(itemName+" not found. [NULL]");
}
}
+
+ public static void addItemToOreDictionary(ItemStack stack, String oreDictName){
+ try {
+ GT_OreDictUnificator.registerOre(oreDictName, stack);
+ } catch (NullPointerException e) {
+ Utils.LOG_ERROR(stack.getDisplayName()+" not registered. [NULL]");
+ }
+ }
@SuppressWarnings("unused")
public static ItemStack getItemStackWithMeta(boolean MOD, String FQRN, String itemName, int meta, int itemstackSize){