Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Add to RenderBlocks.java
- public static void renderStandardInvBlock(RenderBlocks renderblocks, Tessellator tessellator, Block block, int i)
- {
- GL11.glTranslatef(-0.5F, -0.5F, -0.5F);
- tessellator.startDrawingQuads();
- tessellator.setNormal(0.0F, -1F, 0.0F);
- renderblocks.renderBottomFace(block, 0.0D, 0.0D, 0.0D, block.getBlockTextureFromSideAndMetadata(0, i));
- tessellator.draw();
- tessellator.startDrawingQuads();
- tessellator.setNormal(0.0F, 1.0F, 0.0F);
- renderblocks.renderTopFace(block, 0.0D, 0.0D, 0.0D, block.getBlockTextureFromSideAndMetadata(1, i));
- tessellator.draw();
- tessellator.startDrawingQuads();
- tessellator.setNormal(0.0F, 0.0F, -1F);
- renderblocks.renderEastFace(block, 0.0D, 0.0D, 0.0D, block.getBlockTextureFromSideAndMetadata(2, i));
- tessellator.draw();
- tessellator.startDrawingQuads();
- tessellator.setNormal(0.0F, 0.0F, 1.0F);
- renderblocks.renderWestFace(block, 0.0D, 0.0D, 0.0D, block.getBlockTextureFromSideAndMetadata(3, i));
- tessellator.draw();
- tessellator.startDrawingQuads();
- tessellator.setNormal(-1F, 0.0F, 0.0F);
- renderblocks.renderNorthFace(block, 0.0D, 0.0D, 0.0D, block.getBlockTextureFromSideAndMetadata(4, i));
- tessellator.draw();
- tessellator.startDrawingQuads();
- tessellator.setNormal(1.0F, 0.0F, 0.0F);
- renderblocks.renderSouthFace(block, 0.0D, 0.0D, 0.0D, block.getBlockTextureFromSideAndMetadata(5, i));
- tessellator.draw();
- GL11.glTranslatef(0.5F, 0.5F, 0.5F);
- }
- //==========================================================================================================
- //Example usage
- //The original RenderPlanterPotInWorld
- private boolean RenderPlanterPotInWorld(RenderBlocks renderblocks, IBlockAccess iblockaccess, int i, int j, int k, Block block)
- {
- //Base
- block.setBlockBounds(0.1875F, 0.0F, 0.1875F, 0.8125F, 0.0625F, 0.8125F);
- renderblocks.renderStandardBlock(block, i, j, k);
- //Inner sides, also collision box
- block.setBlockBounds(0.1875F, 0.0F, 0.125F, 0.875F, 0.8125F, 0.1875F);
- renderblocks.renderStandardBlock(block, i, j, k);
- block.setBlockBounds(0.1875F, 0.0F, 0.8125F, 0.875F, 0.8125F, 0.875F);
- renderblocks.renderStandardBlock(block, i, j, k);
- block.setBlockBounds(0.125F, 0.0F, 0.1875F, 0.1875F, 0.875F, 0.8125F);
- renderblocks.renderStandardBlock(block, i, j, k);
- block.setBlockBounds(0.8125F, 0.0F, 0.1875F, 0.875F, 0.875F, 0.8125F);
- renderblocks.renderStandardBlock(block, i, j, k);
- //Inner side-lip
- block.setBlockBounds(0.125F, 0.8125F, 0.125F, 0.875F, 0.875F, 0.1875F);
- renderblocks.renderStandardBlock(block, i, j, k);
- block.setBlockBounds(0.125F, 0.8125F, 0.8125F, 0.875F, 0.875F, 0.875F);
- renderblocks.renderStandardBlock(block, i, j, k);
- //Outer sides
- block.setBlockBounds(0.25F, 0.0F, 0.0625F, 0.75F, 0.8125F, 0.125F);
- renderblocks.renderStandardBlock(block, i, j, k);
- block.setBlockBounds(0.25F, 0.0F, 0.875F, 0.75F, 0.8125F, 0.9375F);
- renderblocks.renderStandardBlock(block, i, j, k);
- block.setBlockBounds(0.0625F, 0.0F, 0.25F, 0.125F, 0.8125F, 0.75F);
- renderblocks.renderStandardBlock(block, i, j, k);
- block.setBlockBounds(0.875F, 0.0F, 0.25F, 0.9375F, 0.8125F, 0.75F);
- renderblocks.renderStandardBlock(block, i, j, k);
- //Inner lip
- block.setBlockBounds(0.1875F, 0.8125F, 0.0625F, 0.8125F, 0.875F, 0.125F);
- renderblocks.renderStandardBlock(block, i, j, k);
- block.setBlockBounds(0.1875F, 0.8125F, 0.875F, 0.8125F, 0.875F, 0.9375F);
- renderblocks.renderStandardBlock(block, i, j, k);
- block.setBlockBounds(0.0625F, 0.8125F, 0.1875F, 0.125F, 0.875F, 0.8125F);
- renderblocks.renderStandardBlock(block, i, j, k);
- block.setBlockBounds(0.875F, 0.8125F, 0.1875F, 0.9375F, 0.875F, 0.8125F);
- renderblocks.renderStandardBlock(block, i, j, k);
- //Outer lip
- block.setBlockBounds(0.25F, 0.8125F, 0.0F, 0.75F, 0.875F, 0.0625F);
- renderblocks.renderStandardBlock(block, i, j, k);
- block.setBlockBounds(0.25F, 0.8125F, 0.9375F, 0.75F, 0.875F, 1.0F);
- renderblocks.renderStandardBlock(block, i, j, k);
- block.setBlockBounds(0.0F, 0.8125F, 0.25F, 0.0625F, 0.875F, 0.75F);
- renderblocks.renderStandardBlock(block, i, j, k);
- block.setBlockBounds(0.9375F, 0.8125F, 0.25F, 1.0F, 0.875F, 0.75F);
- renderblocks.renderStandardBlock(block, i, j, k);
- //Not rendered, just fix the stupid hitbox
- block.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.875F, 1.0F);
- return false;
- }
- //And its inventory counterpart. Note the glColor4F (which is handled by block.colorMultiplier for the worldrender)
- private void RenderPlanterPotInInv(RenderBlocks renderblocks, Block block, int i)
- {
- Tessellator tessellator = Tessellator.instance;
- GL11.glColor4f(1.0F, 0.125F, 0.125F, 1.0F);
- //Base
- block.setBlockBounds(0.1875F, 0.0F, 0.1875F, 0.8125F, 0.0625F, 0.8125F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- //Inner sides, also collision box
- block.setBlockBounds(0.1875F, 0.0F, 0.125F, 0.875F, 0.8125F, 0.1875F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- block.setBlockBounds(0.1875F, 0.0F, 0.8125F, 0.875F, 0.8125F, 0.875F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- block.setBlockBounds(0.125F, 0.0F, 0.1875F, 0.1875F, 0.875F, 0.8125F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- block.setBlockBounds(0.8125F, 0.0F, 0.1875F, 0.875F, 0.875F, 0.8125F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- //Inner side-lip
- block.setBlockBounds(0.125F, 0.8125F, 0.125F, 0.875F, 0.875F, 0.1875F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- block.setBlockBounds(0.125F, 0.8125F, 0.8125F, 0.875F, 0.875F, 0.875F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- //Outer sides
- block.setBlockBounds(0.25F, 0.0F, 0.0625F, 0.75F, 0.8125F, 0.125F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- block.setBlockBounds(0.25F, 0.0F, 0.875F, 0.75F, 0.8125F, 0.9375F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- block.setBlockBounds(0.0625F, 0.0F, 0.25F, 0.125F, 0.8125F, 0.75F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- block.setBlockBounds(0.875F, 0.0F, 0.25F, 0.9375F, 0.8125F, 0.75F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- //Inner lip
- block.setBlockBounds(0.1875F, 0.8125F, 0.0625F, 0.8125F, 0.875F, 0.125F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- block.setBlockBounds(0.1875F, 0.8125F, 0.875F, 0.8125F, 0.875F, 0.9375F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- block.setBlockBounds(0.0625F, 0.8125F, 0.1875F, 0.125F, 0.875F, 0.8125F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- block.setBlockBounds(0.875F, 0.8125F, 0.1875F, 0.9375F, 0.875F, 0.8125F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- //Outer lip
- block.setBlockBounds(0.25F, 0.8125F, 0.0F, 0.75F, 0.875F, 0.0625F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- block.setBlockBounds(0.25F, 0.8125F, 0.9375F, 0.75F, 0.875F, 1.0F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- block.setBlockBounds(0.0F, 0.8125F, 0.25F, 0.0625F, 0.875F, 0.75F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- block.setBlockBounds(0.9375F, 0.8125F, 0.25F, 1.0F, 0.875F, 0.75F);
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- //Not rendered, just fix the stupid hitbox
- block.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 0.875F, 1.0F);
- }
- //Essentially, change all this:
- renderblocks.renderStandardBlock(block, i, j, k);
- //to this
- renderblocks.renderStandardInvBlock(renderblocks, tessellator, block, i);
- //and remove the "return false;" (invrenders can't return anything), also make a Tessellator reference
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement