cable rendering still not working..

This commit is contained in:
Raoul Van den Berge
2016-01-02 20:17:37 +01:00
parent 4c2c19de73
commit 1e4501f1c5
2 changed files with 13 additions and 21 deletions

View File

@@ -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();

View File

@@ -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<TileCable>
{
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();
}