The upgrade items now render correctly

This commit is contained in:
Adubbz 2014-09-26 09:40:09 +10:00
parent de51748243
commit 073d2dfdbe
6 changed files with 125 additions and 8 deletions

View File

@ -69,6 +69,11 @@ func_174876_a - createContainer
—IInteractionObject—
func_174875_k - getGuiID
—ItemRenderer—
func_178099_a - renderItem
field_178112_h - itemRenderer
—RenderItem—
func_180451_a - renderEffect
@ -185,15 +190,74 @@ func_177586_a - getModelBlockDefinition
func_177590_d - loadItemModels
func_177592_e - registerSubModels
func_177596_a - getSubModels
func_177570_a - setupModelRegistry
field_177604_a - MODEL_MISSING
field_177608_m - itemModelGenerator
field_177613_u - subModels
field_177605_n - modelRegistry
—ItemModelGenerator—
field_178398_a - LAYERS
—RenderItem—
func_175037_a - getItemModelMesher
func_175048_a - loadInventoryModel
func_175047_a - loadInventoryModel
func_175029_a - loadInventoryModel
func_175031_a - loadInventoryModel
func_175041_b - loadInventoryModels
field_175059_m - itemModelMesher
—Minecraft—
func_175597_ag - getItemRenderer
func_175599_af - getRenderItem
field_175617_aL - modelManager
field_175620_Y - itemRenderer
field_175621_X - renderItem
field_175616_W - renderManager
—GlStateManager—
func_179094_E - pushMatrix
func_179121_F - popMatrix
func_179114_b - rotate
func_179152_a - scale
func_179139_a - scale
func_179109_b - translate
func_179137_b - translate
—GLStateManager.BooleanState—
func_179198_a - setDisabled
func_179200_b - setEnabled
—ItemModelMesher—
func_178083_a - getModelManager
func_178084_b - getItemStackDamage
func_178081_c - getItemID
func_178088_b - getModelForItem
func_178089_a - getModelForItemStack
func_178087_a - getItemTexture
func_178082_a - getItemTexture
func_178086_a - loadItemModel
func_178085_b - resetModels
func_178080_a - addItemMeshDefinition
field_178090_d - modelManager
field_178093_a - modelLocations
field_178091_b - itemModels
field_178092_c - itemMeshDefinitions
—IBakedModel—
func_177554_e - getTexture
—ModelManager—
func_174953_a - getModel
func_174951_a - getDefaultModel
field_174955_d - defaultModel
field_174958_a - modelRegistry
—IWorldNamable—
getCommandSenderName - getName

View File

@ -14,9 +14,14 @@ import static cpw.mods.ironchest.IronChestType.IRON;
import static cpw.mods.ironchest.IronChestType.OBSIDIAN;
import static cpw.mods.ironchest.IronChestType.SILVER;
import static cpw.mods.ironchest.IronChestType.WOOD;
import cpw.mods.ironchest.client.ModelHelper;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.entity.RenderItem;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.common.FMLCommonHandler;
import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.fml.relauncher.Side;
public enum ChestChangerType {
IRONGOLD(IRON, GOLD, "ironGoldUpgrade", "Iron to Gold Chest Upgrade", "mmm", "msm", "mmm"),
@ -33,7 +38,7 @@ public enum ChestChangerType {
private IronChestType target;
public String itemName;
public String descriptiveName;
private ItemChestChanger item;
public ItemChestChanger item;
private String[] recipe;
private ChestChangerType(IronChestType source, IronChestType target, String itemName, String descriptiveName, String... recipe)
@ -59,6 +64,8 @@ public enum ChestChangerType {
{
item = new ItemChestChanger(this);
GameRegistry.registerItem(item, itemName);
ModelHelper.loadInventoryModel(item, "ironchest:" + itemName);
return item;
}

View File

@ -10,20 +10,31 @@
******************************************************************************/
package cpw.mods.ironchest;
import java.util.HashMap;
import java.util.Map.Entry;
import cpw.mods.ironchest.client.ModelHelper;
import net.minecraft.block.Block;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.entity.RenderItem;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraftforge.fml.client.FMLClientHandler;
import net.minecraftforge.fml.common.FMLCommonHandler;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.Mod.EventHandler;
import net.minecraftforge.fml.common.Mod.Instance;
import net.minecraftforge.fml.common.SidedProxy;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import net.minecraftforge.fml.common.network.NetworkRegistry;
import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.fml.relauncher.Side;
@Mod(modid = "IronChest", name = "Iron Chests", dependencies = "required-after:FML@[7.2,)")
public class IronChest {
public class IronChest
{
public static BlockIronChest ironChestBlock;
@SidedProxy(clientSide = "cpw.mods.ironchest.client.ClientProxy", serverSide = "cpw.mods.ironchest.CommonProxy")
public static CommonProxy proxy;
@ -36,15 +47,18 @@ public class IronChest {
Version.init(event.getVersionProperties());
event.getModMetadata().version = Version.fullVersionString();
ChestChangerType.buildItems();
ironChestBlock = new BlockIronChest();
GameRegistry.registerBlock(ironChestBlock, ItemIronChest.class, "BlockIronChest");
PacketHandler.INSTANCE.ordinal();
}
@EventHandler
public void load(FMLInitializationEvent evt)
{
//Registration has been moved to init to account for the registration of inventory models
//Minecraft.getRenderItem() returns null before this stage
ChestChangerType.buildItems();
ironChestBlock = new BlockIronChest();
GameRegistry.registerBlock(ironChestBlock, ItemIronChest.class, "BlockIronChest");
for (IronChestType typ : IronChestType.values())
{
GameRegistry.registerTileEntityWithAlternatives(typ.clazz, "IronChest." + typ.name(), typ.name());

View File

@ -0,0 +1,32 @@
package cpw.mods.ironchest.client;
import net.minecraft.block.Block;
import net.minecraft.client.Minecraft;
import net.minecraft.client.resources.model.ModelResourceLocation;
import net.minecraft.item.Item;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
@SideOnly(Side.CLIENT)
public class ModelHelper
{
public static void loadInventoryModel(Item item, int metadata, String itemName)
{
Minecraft.getMinecraft().getRenderItem().getItemModelMesher().loadItemModel(item, metadata, new ModelResourceLocation(itemName, "inventory"));
}
public static void loadInventoryModel(Block block, int metadata, String blockName)
{
loadInventoryModel(Item.getItemFromBlock(block), metadata, blockName);
}
public static void loadInventoryModel(Block block, String blockName)
{
loadInventoryModel(block, 0, blockName);
}
public static void loadInventoryModel(Item item, String itemName)
{
loadInventoryModel(item, 0, itemName);
}
}

View File

@ -1,7 +1,7 @@
{
"parent": "builtin/generated,
"parent": "builtin/generated",
"textures": {
"layer0": ironchest:items/copperIronUpgrade
"layer0": "ironchest:items/copperIronUpgrade"
},
"display": {
"thirdperson": {

View File

@ -1,7 +1,7 @@
{
"parent": "builtin/generated",
"textures": {
"layer0": "items/apple"
"layer0": "ironchest:items/goldDiamondUpgrade"
},
"display": {
"thirdperson": {