/*******************************************************************************
* AbyssalCraft
* Copyright (c) 2012 - 2017 Shinoow.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the GNU Lesser Public License v3
* which accompanies this distribution, and is available at
* http://www.gnu.org/licenses/lgpl-3.0.txt
*
* Contributors:
* Shinoow - implementation
******************************************************************************/
package com.shinoow.abyssalcraft.client.render.entity;
import net.minecraft.client.model.ModelZombie;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.client.renderer.entity.RenderBiped;
import net.minecraft.client.renderer.entity.RenderManager;
import net.minecraft.client.renderer.entity.layers.LayerBipedArmor;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import com.shinoow.abyssalcraft.common.entity.EntityDreadguard;
@SideOnly(Side.CLIENT)
public class RenderDreadguard extends RenderBiped<EntityDreadguard>
{
/** Scale of the model to use */
private float scale = 1.5F;
private static final ResourceLocation texture = new ResourceLocation("abyssalcraft:textures/model/elite/dread_guard.png");
public RenderDreadguard(RenderManager manager)
{
super(manager, new ModelZombie(), 0.5F);
LayerBipedArmor layerbipedarmor = new LayerBipedArmor(this)
{
@Override
protected void initArmor()
{
modelLeggings = new ModelZombie(0.5F, true);
modelArmor = new ModelZombie(1.0F, true);
}
};
this.addLayer(layerbipedarmor);
}
/**
* Applies the scale to the transform matrix
*/
protected void preRenderScale(EntityDreadguard par1Entitydreadguard, float par2)
{
GlStateManager.scale(scale, scale, scale);
}
@Override
protected ResourceLocation getEntityTexture(EntityDreadguard par1Entitydreadguard)
{
return texture;
}
/**
* Allows the render to do any OpenGL state modifications necessary before the model is rendered. Args:
* entityLiving, partialTickTime
*/
@Override
protected void preRenderCallback(EntityDreadguard par1EntityLivingBase, float par2)
{
preRenderScale(par1EntityLivingBase, par2);
}
}