Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class FuelBlockRenderHandler implements ISimpleBlockRenderingHandler{
- @Override
- public void renderInventoryBlock(Block block, int metadata, int modelId, RenderBlocks renderer) {
- }
- @Override
- public boolean renderWorldBlock(IBlockAccess world, int xCoord, int yCoord, int zCoord, Block block, int modelId, RenderBlocks renderer) {
- BlockFuel blockFuel = (BlockFuel) world.getBlock(xCoord, yCoord, zCoord);
- Item arcaneFuelItem = new ItemStack(InitializeItems.magicalFuel).getItem();
- int worldBlockMetaData = world.getBlockMetadata(xCoord, yCoord, zCoord);
- if (Client.renderPass == 0) {
- //renderer.renderStandardBlock(blockFuel, xCoord, yCoord, zCoord);
- } else if (Client.renderPass == 1) {
- switch (worldBlockMetaData) {
- case Metadata.ARCANE_FUEL:
- IIcon aracneFuelIcon = InitializeItems.magicalFuel.getIconFromDamage(Metadata.ARCANE_FUEL);
- /* Transparent Cyan Texture & Item Render*/
- //drawFuelBlock(blockFuel, xCoord, yCoord, zCoord, Metadata.ARCANE_FUEL);
- renderer.clearOverrideBlockTexture();
- renderer.overrideBlockTexture = aracneFuelIcon;
- drawItemOntoBlock(aracneFuelIcon, xCoord, yCoord, zCoord, Metadata.ARCANE_FUEL);
- break;
- case Metadata.TAINT_INFUSED_COAL:
- IIcon taintInfusedCoalIcon = renderer.getIconSafe(InitializeItems.magicalFuel.getIconFromDamage(Metadata.TAINT_INFUSED_COAL));
- /* Transparent Purple Texture & Item Render*/
- //drawFuelBlock(blockFuel, xCoord, yCoord, zCoord, Metadata.TAINT_INFUSED_COAL);
- renderer.clearOverrideBlockTexture();
- renderer.overrideBlockTexture = taintInfusedCoalIcon;
- drawItemOntoBlock(taintInfusedCoalIcon, xCoord, yCoord, zCoord, Metadata.TAINT_INFUSED_COAL);
- break;
- case Metadata.COMBUSIBLE_DARK_MATTER:
- IIcon combusibleDarkMatterIcon = renderer.getIconSafe(InitializeItems.magicalFuel.getIconFromDamage(Metadata.COMBUSIBLE_DARK_MATTER));
- /* Transparent Black Texture & Item Render*/
- //drawFuelBlock(blockFuel, xCoord, yCoord, zCoord, Metadata.COMBUSIBLE_DARK_MATTER);
- renderer.clearOverrideBlockTexture();
- renderer.overrideBlockTexture = combusibleDarkMatterIcon;
- drawItemOntoBlock(combusibleDarkMatterIcon, xCoord, yCoord, zCoord, Metadata.COMBUSIBLE_DARK_MATTER);
- break;
- case Metadata.COSMIC_INCENDIARY_CHUNK:
- IIcon cosmicIncendiaryChunkIcon = renderer.getIconSafe(InitializeItems.magicalFuel.getIconFromDamage(Metadata.COSMIC_INCENDIARY_CHUNK));
- /* Transparent Red Texture & Item Render*/
- //drawFuelBlock(blockFuel, xCoord, yCoord, zCoord, Metadata.COSMIC_INCENDIARY_CHUNK);
- renderer.clearOverrideBlockTexture();
- renderer.overrideBlockTexture = cosmicIncendiaryChunkIcon;
- drawItemOntoBlock(cosmicIncendiaryChunkIcon, xCoord, yCoord, zCoord, Metadata.COSMIC_INCENDIARY_CHUNK);
- break;
- }
- }
- return true;
- }
- @Override
- public boolean shouldRender3DInInventory(int modelId) {
- return true;
- }
- @Override
- public int getRenderId() {
- return Client.fuelBlockRenderTypeID;
- }
- public void drawItemOntoBlock(IIcon icon, int xCoord, int yCoord, int zCoord, int metaData) {
- TextureManager textureManager = Minecraft.getMinecraft().renderEngine;
- Tessellator t = Tessellator.instance;
- float iconTexMaxV = icon.getMaxV();
- float iconTexMinV = icon.getMinV();
- float iconTexWidth = icon.getIconWidth();
- float iconTexHeight = icon.getIconHeight();
- float iconTexMaxU = icon.getMaxU();
- float iconTexMinU = icon.getMinU();
- //GL11.glEnable(GL11.GL_BLEND);
- switch (metaData) {
- case Metadata.ARCANE_FUEL:
- t.addTranslation(xCoord, yCoord, zCoord);
- textureManager.bindTexture(new ResourceLocation(Textures.RESOURCE_PREFIX + Textures.ITEM_LOCATION + Names.Items.MAGICAL_FUEL + "." + Names.Items.FUEL_TYPES[metaData] + ".png"));
- t.addVertexWithUV(0, 1, 1, iconTexMinU + 0.01F, iconTexMinV + 0.01F);
- t.addVertexWithUV(1, 1, 1, iconTexMinU + 0.01F, iconTexMaxV + 0.01F);
- t.addVertexWithUV(1, 1, 0, iconTexMaxU + 0.01F, iconTexMaxV + 0.01F);
- t.addVertexWithUV(0, 1, 0, iconTexMaxU + 0.01F, iconTexMinV + 0.01F);
- break;
- case Metadata.TAINT_INFUSED_COAL:
- textureManager.bindTexture(new ResourceLocation(Textures.RESOURCE_PREFIX + Textures.ITEM_LOCATION + Names.Items.MAGICAL_FUEL + "." + Names.Items.FUEL_TYPES[metaData] + ".png"));
- t.addTranslation(xCoord, yCoord, zCoord);
- t.addVertexWithUV(0, 1, 1, iconTexMinU, iconTexMinV);
- t.addVertexWithUV(1, 1, 1, iconTexMinU, iconTexMaxV);
- t.addVertexWithUV(1, 1, 0, iconTexMaxU, iconTexMaxV);
- t.addVertexWithUV(0, 1, 0, iconTexMaxU, iconTexMinV);
- break;
- case Metadata.COMBUSIBLE_DARK_MATTER:
- textureManager.bindTexture(new ResourceLocation(Textures.RESOURCE_PREFIX + Textures.ITEM_LOCATION + Names.Items.MAGICAL_FUEL + "." + Names.Items.FUEL_TYPES[metaData] + ".png"));
- t.addTranslation(xCoord, yCoord, zCoord);
- t.addVertexWithUV(0, 1, 1, iconTexMinU, iconTexMinV);
- t.addVertexWithUV(1, 1, 1, iconTexMinU, iconTexMaxV);
- t.addVertexWithUV(1, 1, 0, iconTexMaxU, iconTexMaxV);
- t.addVertexWithUV(0, 1, 0, iconTexMaxU, iconTexMinV);
- break;
- case Metadata.COSMIC_INCENDIARY_CHUNK:
- t.addTranslation(xCoord, yCoord, zCoord);
- textureManager.bindTexture(new ResourceLocation(Textures.RESOURCE_PREFIX + Textures.ITEM_LOCATION + Names.Items.MAGICAL_FUEL + "." + Names.Items.FUEL_TYPES[metaData] + ".png"));
- t.addVertexWithUV(0, 1, 1, iconTexMinU, iconTexMinV);
- t.addVertexWithUV(1, 1, 1, iconTexMinU, iconTexMaxV);
- t.addVertexWithUV(1, 1, 0, iconTexMaxU, iconTexMaxV);
- t.addVertexWithUV(0, 1, 0, iconTexMaxU, iconTexMinV);
- break;
- }
- }
- public void drawFuelBlock(Block block, int xCoord, int yCoord, int zCoord, int metaData) {
- TextureManager textureManager = Minecraft.getMinecraft().renderEngine;
- Tessellator t = Tessellator.instance;
- BlockFuel blockFuel = new BlockFuel();
- IIcon overlay = Blocks.coal_block.getIcon(1, 1);
- float overlayMaxV = overlay.getMaxV();
- float overlayMinV = overlay.getMinV();
- float overlayWidth = overlay.getIconWidth();
- float overlayHeight = overlay.getIconHeight();
- float overlayMaxU = overlay.getMaxU();
- float overlayMinU = overlay.getMinU();
- float redRGB[] = new float[] {
- 198, 52, 52
- };
- float cyanRGB[] = new float[] {
- 0, 153, 153
- };
- float blackRGB[] = new float[] {
- 0, 0, 0
- };
- float purpleRGB[] = new float[] {
- 153, 0, 153
- };
- int R = 0;
- int G = 1;
- int B = 2;
- float overlayAlpha = 0.9F;
- GL11.glEnable(GL11.GL_BLEND);
- switch (metaData) {
- case Metadata.ARCANE_FUEL:
- t.setColorRGBA_F(cyanRGB[R], cyanRGB[G], cyanRGB[B], overlayAlpha);
- /* Draw the stuff */
- t.addTranslation(xCoord, yCoord, zCoord);
- t.addVertexWithUV(0, 1, 1, overlayMinU, overlayMinV);
- t.addVertexWithUV(1, 1, 1, overlayMinU, overlayMaxV);
- t.addVertexWithUV(1, 1, 0, overlayMaxU, overlayMaxV);
- t.addVertexWithUV(0, 1, 0, overlayMaxU, overlayMinV);
- break;
- case Metadata.TAINT_INFUSED_COAL:
- t.setColorRGBA_F(purpleRGB[R], purpleRGB[G], purpleRGB[B], overlayAlpha);
- /* Draw the stuff */
- t.addTranslation(xCoord, yCoord, zCoord);
- t.addVertexWithUV(0, 1, 1, overlayMinU, overlayMinV);
- t.addVertexWithUV(1, 1, 1, overlayMinU, overlayMaxV);
- t.addVertexWithUV(1, 1, 0, overlayMaxU, overlayMaxV);
- t.addVertexWithUV(0, 1, 0, overlayMaxU, overlayMinV);
- break;
- case Metadata.COMBUSIBLE_DARK_MATTER:
- t.setColorRGBA_F(blackRGB[R], blackRGB[G], blackRGB[B], overlayAlpha);
- /* Draw the stuff */
- t.addTranslation(xCoord, yCoord, zCoord);
- t.addVertexWithUV(0, 1, 1, overlayMinU, overlayMinV);
- t.addVertexWithUV(1, 1, 1, overlayMinU, overlayMaxV);
- t.addVertexWithUV(1, 1, 0, overlayMaxU, overlayMaxV);
- t.addVertexWithUV(0, 1, 0, overlayMaxU, overlayMinV);
- break;
- case Metadata.COSMIC_INCENDIARY_CHUNK:
- t.setColorRGBA_F(redRGB[R], redRGB[G], redRGB[B], overlayAlpha);
- /* Draw the stuff */
- t.addTranslation(xCoord, yCoord, zCoord);
- t.addVertexWithUV(0, 1, 1, overlayMinU, overlayMinV);
- t.addVertexWithUV(1, 1, 1, overlayMinU, overlayMaxV);
- t.addVertexWithUV(1, 1, 0, overlayMaxU, overlayMaxV);
- t.addVertexWithUV(0, 1, 0, overlayMaxU, overlayMinV);
- break;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement