Search in sources :

Example 1 with IBoxProvider

use of buildcraft.core.internal.IBoxProvider in project BuildCraft by BuildCraft.

the class RenderBoxProvider method renderTileEntityAt.

@Override
public void renderTileEntityAt(T tileentity, double x, double y, double z, float f, int anArgument) {
    GL11.glPushMatrix();
    GL11.glPushAttrib(GL11.GL_ENABLE_BIT);
    GlStateManager.enableCull();
    GlStateManager.disableLighting();
    GlStateManager.enableBlend();
    GlStateManager.blendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA);
    GL11.glPushMatrix();
    GL11.glTranslated(-tileentity.getPos().getX(), -tileentity.getPos().getY(), -tileentity.getPos().getZ());
    GL11.glTranslated(x, y, z);
    if (tileentity instanceof IBoxesProvider) {
        for (Box b : ((IBoxesProvider) tileentity).getBoxes()) {
            if (b.isVisible) {
                RenderBox.doRender(TileEntityRendererDispatcher.instance.worldObj, Minecraft.getMinecraft().renderEngine, getTexture(b.kind), b);
            }
        }
    } else if (tileentity instanceof IBoxProvider) {
        Box b = ((IBoxProvider) tileentity).getBox();
        if (b.isVisible && b.isInitialized()) {
            RenderBox.doRender(TileEntityRendererDispatcher.instance.worldObj, Minecraft.getMinecraft().renderEngine, getTexture(b.kind), b);
        }
    }
    GL11.glPopMatrix();
    GL11.glPopAttrib();
    GL11.glPopMatrix();
}
Also used : IBoxesProvider(buildcraft.core.internal.IBoxesProvider) Box(buildcraft.lib.misc.data.Box) IBoxProvider(buildcraft.core.internal.IBoxProvider)

Aggregations

IBoxProvider (buildcraft.core.internal.IBoxProvider)1 IBoxesProvider (buildcraft.core.internal.IBoxesProvider)1 Box (buildcraft.lib.misc.data.Box)1