package wehavecookies56.kk.client.render;
import net.minecraft.client.renderer.entity.Render;
import net.minecraft.client.renderer.texture.TextureMap;
import net.minecraft.entity.Entity;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import org.lwjgl.opengl.GL11;
import wehavecookies56.kk.block.AddedBlocks;
import wehavecookies56.kk.entities.EntityBlastBlox;
@SideOnly(Side.CLIENT)
public class BlockRenderBlastBlox extends Render
{
private RenderBlocks blockRenderer = new RenderBlocks();
public BlockRenderBlastBlox()
{
this.shadowSize = 0.5F;
}
public void renderPrimedTNT(EntityBlastBlox par1EntityTNTPrimed, double par2, double par4, double par6, float par8, float par9)
{
GL11.glPushMatrix();
GL11.glTranslatef((float)par2, (float)par4, (float)par6);
float f2;
if ((float)par1EntityTNTPrimed.fuse - par9 + 1.0F < 10.0F)
{
f2 = 1.0F - ((float)par1EntityTNTPrimed.fuse - par9 + 1.0F) / 10.0F;
if (f2 < 0.0F)
{
f2 = 0.0F;
}
if (f2 > 1.0F)
{
f2 = 1.0F;
}
f2 *= f2;
f2 *= f2;
float f3 = 1.0F + f2 * 0.3F;
GL11.glScalef(f3, f3, f3);
}
f2 = (1.0F - ((float)par1EntityTNTPrimed.fuse - par9 + 1.0F) / 100.0F) * 0.8F;
this.bindEntityTexture(par1EntityTNTPrimed);
this.blockRenderer.renderBlockAsItem(AddedBlocks.BlastBlox, 0, par1EntityTNTPrimed.getBrightness(par9));
if (par1EntityTNTPrimed.fuse / 5 % 2 == 0)
{
GL11.glDisable(GL11.GL_TEXTURE_2D);
GL11.glDisable(GL11.GL_LIGHTING);
GL11.glEnable(GL11.GL_BLEND);
GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_DST_ALPHA);
GL11.glColor4f(1.0F, 1.0F, 1.0F, f2);
this.blockRenderer.renderBlockAsItem(AddedBlocks.BlastBlox, 0, 1.0F);
GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F);
GL11.glDisable(GL11.GL_BLEND);
GL11.glEnable(GL11.GL_LIGHTING);
GL11.glEnable(GL11.GL_TEXTURE_2D);
}
GL11.glPopMatrix();
}
protected ResourceLocation func_110808_a(EntityBlastBlox par1EntityTNTPrimed)
{
return TextureMap.locationBlocksTexture;
}
protected ResourceLocation getEntityTexture(Entity par1Entity)
{
return this.func_110808_a((EntityBlastBlox)par1Entity);
}
public void doRender(Entity par1Entity, double par2, double par4, double par6, float par8, float par9)
{
this.renderPrimedTNT((EntityBlastBlox)par1Entity, par2, par4, par6, par8, par9);
}
}