diff options
author | Draknyte1 <Draknyte1@hotmail.com> | 2016-10-06 00:46:53 +1000 |
---|---|---|
committer | Draknyte1 <Draknyte1@hotmail.com> | 2016-10-06 00:46:53 +1000 |
commit | e230c773e0fc305bff3e3c4d1ed1e36878b02b29 (patch) | |
tree | dd4b9bd44ffe9cf264f7d646f2f2c8da78166c1b /src/Java/gtPlusPlus/xmod/gregtech/common/Meta_GT_Proxy.java | |
parent | 91a7d38056f186a7f5f254b9ed97c47d12b50382 (diff) | |
download | GT5-Unofficial-e230c773e0fc305bff3e3c4d1ed1e36878b02b29.tar.gz GT5-Unofficial-e230c773e0fc305bff3e3c4d1ed1e36878b02b29.tar.bz2 GT5-Unofficial-e230c773e0fc305bff3e3c4d1ed1e36878b02b29.zip |
+ Added the Big Shovels, which are 3x3 shovels.
+ Updated Generated Tools and their damage taken when mining blocks.
> Now meta-tools only generate if they have a valid colour, durability and recipe contains valid components.
$ Fixed Fluid Cell Recipes between .08/.09 branches.
% Cleaned up some old textures.
+ Added a log message to output total recipes the mod has added for crafting table use.
+ Started the base work for extra NBT data saving for GT TileEntities.
Diffstat (limited to 'src/Java/gtPlusPlus/xmod/gregtech/common/Meta_GT_Proxy.java')
-rw-r--r-- | src/Java/gtPlusPlus/xmod/gregtech/common/Meta_GT_Proxy.java | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/Java/gtPlusPlus/xmod/gregtech/common/Meta_GT_Proxy.java b/src/Java/gtPlusPlus/xmod/gregtech/common/Meta_GT_Proxy.java index 05abaa00da..98fcc6d6bb 100644 --- a/src/Java/gtPlusPlus/xmod/gregtech/common/Meta_GT_Proxy.java +++ b/src/Java/gtPlusPlus/xmod/gregtech/common/Meta_GT_Proxy.java @@ -11,6 +11,7 @@ import gregtech.api.enums.SubTag; import gregtech.api.enums.TC_Aspects; import gregtech.api.enums.ToolDictNames; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; +import gregtech.api.metatileentity.BaseMetaTileEntityEx; import gregtech.api.objects.ItemData; import gregtech.api.objects.MaterialStack; import gregtech.api.util.GT_Log; @@ -34,6 +35,7 @@ import java.util.HashSet; import java.util.Iterator; import java.util.List; +import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.init.Blocks; import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemStack; @@ -41,12 +43,22 @@ import net.minecraftforge.oredict.OreDictionary; import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.ModContainer; import cpw.mods.fml.common.eventhandler.SubscribeEvent; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; public class Meta_GT_Proxy { //Store Some MetaTileEntity Data here, why not? public static final IMetaTileEntity[] METATILEENTITIES = new IMetaTileEntity[GregTech_API.MAXIMUM_METATILE_IDS]; + public static List<Runnable> GT_BlockIconload = new ArrayList<Runnable>(); + public static List<Runnable> GT_ItemIconload = new ArrayList<Runnable>(); + + + + @SideOnly(Side.CLIENT) + public static IIconRegister sBlockIcons, sItemIcons; + //Silly Vars private static final Collection<String> mIgnoredItems = new HashSet<String>(Arrays.asList(new String[]{"itemGhastTear", "itemFlint", "itemClay", "itemBucketSaltWater", "itemBucketFreshWater", "itemBucketWater", "itemRock", "itemReed", "itemArrow", "itemSaw", "itemKnife", "itemHammer", "itemChisel", "itemRubber", @@ -899,6 +911,25 @@ public class Meta_GT_Proxy { } + /** + * This gives you a new BaseMetaTileEntity. As some Interfaces are not always loaded (Buildcraft, Univeral Electricity) I have to use Invocation at the Constructor of the BaseMetaTileEntity + */ + private static Class<BaseMetaTileEntityEx> sBaseMetaTileEntityClass = null; + public static BaseMetaTileEntityEx constructBaseMetaTileEntity() { + if (sBaseMetaTileEntityClass == null) { + try { + return (BaseMetaTileEntityEx) (sBaseMetaTileEntityClass = BaseMetaTileEntityEx.class).newInstance(); + } catch (Throwable e) {/*Do nothing*/} + } + + try { + return (BaseMetaTileEntityEx) (sBaseMetaTileEntityClass.newInstance()); + } catch (Throwable e) { + Utils.LOG_INFO("Fatal Error ocurred while initializing TileEntities, crashing Minecraft."); + e.printStackTrace(GT_Log.err); + throw new RuntimeException(e); + } + } } |