package com.jaquadro.minecraft.gardenstuff.integration.lantern; import com.jaquadro.minecraft.gardenapi.api.component.StandardLanternSource; import com.jaquadro.minecraft.gardencore.util.RenderHelper; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.Block; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.init.Blocks; import net.minecraft.item.Item; import net.minecraft.world.World; import net.minecraftforge.client.IItemRenderer; import java.util.Random; public class ThaumcraftCandleSource extends StandardLanternSource { private Block blockCandle; public ThaumcraftCandleSource (Block blockCandle) { super(new LanternSourceInfo("thaumcraftCandle", Item.getItemFromBlock(blockCandle), blockCandle.getLightValue())); this.blockCandle = blockCandle; } @Override @SideOnly(Side.CLIENT) public void renderParticle (World world, int x, int y, int z, Random rand, int meta) { world.spawnParticle("flame", x + .5f, y + .7f, z + .5f, 0.0D, 0.0D, 0.0D); } @Override @SideOnly(Side.CLIENT) public void render (RenderBlocks renderer, int x, int y, int z, int meta, int pass) { renderer.renderBlockAllFaces(blockCandle, x, y, z); } @Override @SideOnly(Side.CLIENT) public void renderItem (RenderBlocks renderer, IItemRenderer.ItemRenderType renderType, int meta) { RenderHelper renderHelper = RenderHelper.instance; renderHelper.setRenderBounds(0.375, 0, 0.375, 0.625, 0.5, 0.625); renderHelper.renderFace(RenderHelper.ZNEG, null, blockCandle, blockCandle.getIcon(2, meta), meta); renderHelper.renderFace(RenderHelper.ZPOS, null, blockCandle, blockCandle.getIcon(3, meta), meta); renderHelper.renderFace(RenderHelper.XNEG, null, blockCandle, blockCandle.getIcon(4, meta), meta); renderHelper.renderFace(RenderHelper.XPOS, null, blockCandle, blockCandle.getIcon(5, meta), meta); renderHelper.renderFace(RenderHelper.YPOS, null, blockCandle, blockCandle.getIcon(1, meta), meta); renderHelper.setRenderBounds(0.46875, 0, 0.46875, 0.5325, 1, 0.53125); renderHelper.renderFace(RenderHelper.ZNEG, null, Blocks.torch, Blocks.torch.getIcon(2, 0), meta); renderHelper.renderFace(RenderHelper.ZPOS, null, Blocks.torch, Blocks.torch.getIcon(3, 0), meta); renderHelper.renderFace(RenderHelper.XNEG, null, Blocks.torch, Blocks.torch.getIcon(4, 0), meta); renderHelper.renderFace(RenderHelper.XPOS, null, Blocks.torch, Blocks.torch.getIcon(5, 0), meta); renderHelper.setRenderBounds(0.46875, 0, 0.46875, 0.5325, 0.625, 0.5325); renderHelper.renderFace(RenderHelper.YPOS, null, Blocks.torch, Blocks.torch.getIcon(1, 0), meta); } }