001 package net.minecraft.src; 002 003 import cpw.mods.fml.common.Side; 004 import cpw.mods.fml.common.asm.SideOnly; 005 import org.lwjgl.opengl.GL11; 006 007 @SideOnly(Side.CLIENT) 008 public class RenderWolf extends RenderLiving 009 { 010 public RenderWolf(ModelBase par1ModelBase, ModelBase par2ModelBase, float par3) 011 { 012 super(par1ModelBase, par3); 013 this.setRenderPassModel(par2ModelBase); 014 } 015 016 protected float getTailRotation(EntityWolf par1EntityWolf, float par2) 017 { 018 return par1EntityWolf.getTailRotation(); 019 } 020 021 protected int func_82447_a(EntityWolf par1EntityWolf, int par2, float par3) 022 { 023 float var4; 024 025 if (par2 == 0 && par1EntityWolf.getWolfShaking()) 026 { 027 var4 = par1EntityWolf.getBrightness(par3) * par1EntityWolf.getShadingWhileShaking(par3); 028 this.loadTexture(par1EntityWolf.getTexture()); 029 GL11.glColor3f(var4, var4, var4); 030 return 1; 031 } 032 else if (par2 == 1 && par1EntityWolf.isTamed()) 033 { 034 this.loadTexture("/mob/wolf_collar.png"); 035 var4 = 1.0F; 036 int var5 = par1EntityWolf.getCollarColor(); 037 GL11.glColor3f(var4 * EntitySheep.fleeceColorTable[var5][0], var4 * EntitySheep.fleeceColorTable[var5][1], var4 * EntitySheep.fleeceColorTable[var5][2]); 038 return 1; 039 } 040 else 041 { 042 return -1; 043 } 044 } 045 046 /** 047 * Queries whether should render the specified pass or not. 048 */ 049 protected int shouldRenderPass(EntityLiving par1EntityLiving, int par2, float par3) 050 { 051 return this.func_82447_a((EntityWolf)par1EntityLiving, par2, par3); 052 } 053 054 /** 055 * Defines what float the third param in setRotationAngles of ModelBase is 056 */ 057 protected float handleRotationFloat(EntityLiving par1EntityLiving, float par2) 058 { 059 return this.getTailRotation((EntityWolf)par1EntityLiving, par2); 060 } 061 }