diff --git a/src/main/java/storagecraft/proxy/ClientProxy.java b/src/main/java/storagecraft/proxy/ClientProxy.java index 5caf0411b..40ec9b8b4 100755 --- a/src/main/java/storagecraft/proxy/ClientProxy.java +++ b/src/main/java/storagecraft/proxy/ClientProxy.java @@ -9,13 +9,10 @@ import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; import net.minecraftforge.client.ForgeHooksClient; -import net.minecraftforge.client.event.ModelBakeEvent; import net.minecraftforge.client.model.ModelLoader; -import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.fml.client.registry.ClientRegistry; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; -import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import storagecraft.StorageCraftBlocks; import storagecraft.StorageCraftItems; import storagecraft.block.EnumControllerType; @@ -67,19 +64,8 @@ public class ClientProxy extends CommonProxy ); ForgeHooksClient.registerTESRItemStack(Item.getItemFromBlock(StorageCraftBlocks.CABLE), 0, TileCable.class); + ModelLoader.setCustomModelResourceLocation(Item.getItemFromBlock(StorageCraftBlocks.CABLE), 0, new ModelResourceLocation("storagecraft:cable", "inventory")); - MinecraftForge.EVENT_BUS.register(BakeEventHandler.instance); - } - - public static class BakeEventHandler - { - public static final BakeEventHandler instance = new BakeEventHandler(); - - @SubscribeEvent - public void onModelBakeEvent(ModelBakeEvent event) - { - event.modelManager.getBlockModelShapes().registerBuiltInBlocks(StorageCraftBlocks.CABLE); - } } @Override @@ -87,7 +73,7 @@ public class ClientProxy extends CommonProxy { super.init(e); - ClientRegistry.bindTileEntitySpecialRenderer(TileCable.class, new BlockCableRenderer()); + ClientRegistry.bindTileEntitySpecialRenderer(TileCable.class, BlockCableRenderer.INSTANCE); ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher(); diff --git a/src/main/java/storagecraft/render/BlockCableRenderer.java b/src/main/java/storagecraft/render/BlockCableRenderer.java index 50eb5cf08..4f6cd3741 100755 --- a/src/main/java/storagecraft/render/BlockCableRenderer.java +++ b/src/main/java/storagecraft/render/BlockCableRenderer.java @@ -1,22 +1,28 @@ package storagecraft.render; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; -import net.minecraft.tileentity.TileEntity; import org.lwjgl.opengl.GL11; import storagecraft.render.model.CableModel; import storagecraft.tile.TileCable; -public class BlockCableRenderer extends TileEntitySpecialRenderer +public class BlockCableRenderer extends TileEntitySpecialRenderer { - public static final CableModel CABLE_MODEL = new CableModel(); + public static final BlockCableRenderer INSTANCE = new BlockCableRenderer(new CableModel()); + + private CableModel model; + + public BlockCableRenderer(CableModel model) + { + this.model = model; + } @Override - public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float scale, int a) + public void renderTileEntityAt(TileCable tile, double x, double y, double z, float scale, int a) { GL11.glPushMatrix(); GL11.glTranslatef((float) x, (float) y, (float) z); - CABLE_MODEL.render(tile); + model.render(tile); GL11.glPopMatrix(); }