mirror of
https://github.com/ACGaming/Spackenmobs
synced 2024-05-19 11:54:25 +02:00
61 lines
2.7 KiB
Java
61 lines
2.7 KiB
Java
package mod.acgaming.spackenmobs.render;
|
|
|
|
import net.minecraft.client.Minecraft;
|
|
import net.minecraft.client.model.ModelWither;
|
|
import net.minecraft.client.renderer.GlStateManager;
|
|
import net.minecraft.client.renderer.entity.layers.LayerRenderer;
|
|
import net.minecraft.util.ResourceLocation;
|
|
import net.minecraft.util.math.MathHelper;
|
|
import net.minecraftforge.fml.relauncher.Side;
|
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
|
|
|
import mod.acgaming.spackenmobs.entities.EntityJensWither;
|
|
|
|
@SideOnly(Side.CLIENT)
|
|
public class LayerJensWitherAura implements LayerRenderer<EntityJensWither>
|
|
{
|
|
private static final ResourceLocation WITHER_ARMOR = new ResourceLocation("textures/entity/wither/wither_armor.png");
|
|
private final RenderJensWither witherRenderer;
|
|
private final ModelWither witherModel = new ModelWither(0.5F);
|
|
|
|
public LayerJensWitherAura(RenderJensWither witherRendererIn)
|
|
{
|
|
this.witherRenderer = witherRendererIn;
|
|
}
|
|
|
|
public void doRenderLayer(EntityJensWither entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTicks, float ageInTicks, float netHeadYaw, float headPitch, float scale)
|
|
{
|
|
if (entitylivingbaseIn.isArmored())
|
|
{
|
|
GlStateManager.depthMask(!entitylivingbaseIn.isInvisible());
|
|
this.witherRenderer.bindTexture(WITHER_ARMOR);
|
|
GlStateManager.matrixMode(5890);
|
|
GlStateManager.loadIdentity();
|
|
float f = (float) entitylivingbaseIn.ticksExisted + partialTicks;
|
|
float f1 = MathHelper.cos(f * 0.02F) * 3.0F;
|
|
float f2 = f * 0.01F;
|
|
GlStateManager.translate(f1, f2, 0.0F);
|
|
GlStateManager.matrixMode(5888);
|
|
GlStateManager.enableBlend();
|
|
float f3 = 0.5F;
|
|
GlStateManager.color(0.5F, 0.5F, 0.5F, 1.0F);
|
|
GlStateManager.disableLighting();
|
|
GlStateManager.blendFunc(GlStateManager.SourceFactor.ONE, GlStateManager.DestFactor.ONE);
|
|
this.witherModel.setLivingAnimations(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTicks);
|
|
this.witherModel.setModelAttributes(this.witherRenderer.getMainModel());
|
|
Minecraft.getMinecraft().entityRenderer.setupFogColor(true);
|
|
this.witherModel.render(entitylivingbaseIn, limbSwing, limbSwingAmount, ageInTicks, netHeadYaw, headPitch, scale);
|
|
Minecraft.getMinecraft().entityRenderer.setupFogColor(false);
|
|
GlStateManager.matrixMode(5890);
|
|
GlStateManager.loadIdentity();
|
|
GlStateManager.matrixMode(5888);
|
|
GlStateManager.enableLighting();
|
|
GlStateManager.disableBlend();
|
|
}
|
|
}
|
|
|
|
public boolean shouldCombineTextures()
|
|
{
|
|
return false;
|
|
}
|
|
} |