Advertisement
Guest User

ModelEagle.java

a guest
Dec 2nd, 2018
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.36 KB | None | 0 0
  1. package jshultz.falconry.client.model;
  2.  
  3. import org.lwjgl.opengl.GL11;
  4. import org.lwjgl.opengl.GL20;
  5. import org.lwjgl.opengl.GL45;
  6.  
  7. import net.minecraft.client.model.ModelBase;
  8. import net.minecraft.client.model.ModelRenderer;
  9. import net.minecraft.client.renderer.GlStateManager;
  10. import net.minecraft.entity.Entity;
  11. import net.minecraft.entity.EntityLivingBase;
  12.  
  13. public class ModelEagle extends ModelBase {
  14.    
  15.     private ModelRenderer head;
  16.     private ModelRenderer neck;
  17.     private ModelRenderer beak[];
  18.     private ModelRenderer body;
  19.     private ModelRenderer[] leftLeg;
  20.     private ModelRenderer[] rightLeg;
  21.    
  22.     public int textureWidth = 64;
  23.     public int textureHeight = 128;
  24.    
  25.     public ModelEagle() {
  26.        
  27.         body = new ModelRenderer(this, 0, 0);
  28.         neck = new ModelRenderer(this, 0, 0);
  29.         beak = new ModelRenderer[2];
  30.         beak[0] = new ModelRenderer(this, 0, 0);
  31.         beak[1] = new ModelRenderer(this, 0, 0);
  32.         head = new ModelRenderer(this, 0, 0);
  33.         leftLeg = new ModelRenderer[3];
  34.         rightLeg = new ModelRenderer[3];
  35.         leftLeg[0] = new ModelRenderer(this, 0, 0);
  36.         leftLeg[1] = new ModelRenderer(this, 0, 0);
  37.         leftLeg[2] = new ModelRenderer(this, 0, 0);
  38.         rightLeg[0] = new ModelRenderer(this, 0, 0);
  39.         rightLeg[1] = new ModelRenderer(this, 0, 0);
  40.         rightLeg[2] = new ModelRenderer(this, 0, 0);
  41.         body.setTextureSize(textureWidth, textureHeight);
  42.         head.setTextureSize(textureWidth, textureHeight);
  43.         neck.setTextureSize(textureWidth, textureHeight);
  44.         beak[0].setTextureSize(textureWidth, textureHeight);
  45.         beak[1].setTextureSize(textureWidth, textureHeight);
  46.         rightLeg[0].setTextureSize(textureWidth, textureHeight);
  47.         rightLeg[1].setTextureSize(textureWidth, textureHeight);
  48.         body.addBox(-5.0F, 0.0F, -4.0F, 10, 16, 8);
  49.         setPartRotation(body, (float) Math.PI / 8, 0.0F, 0.0F);
  50.         neck.addBox(-3.0F, -1.0F, -1.0F, 6, 4, 4);
  51.         setPartRotation(neck, (float) Math.PI / 3 - 0.5F, 0.0F, 0.0F);
  52.         body.addChild(neck);
  53. //      head.addBox(-3.0F, -3.0F, -4.0F, 6, 4, 4);
  54. //      head.setRotationPoint(0.0F, -2.0F, 0.0F);
  55. //      neck.addChild(head);       
  56.        
  57. //      beak[0].addBox(-1.0F, -3.5F, -8.0F, 2, 1, 4);
  58. //      beak[1].addBox(-1.0F, -2.F, -8.0F, 2, 1, 4);
  59. //      head.addChild(beak[0]);
  60. //      head.addChild(beak[1]);
  61.     }
  62.    
  63.     public void render(Entity entity, float limbSwing, float limbSwingAmount, float tickAge, float netHeadYaw, float headPitch, float scale) {
  64.        
  65.         GL11.glPushMatrix();
  66.         setRotationAngles(limbSwing, limbSwingAmount, tickAge, netHeadYaw, headPitch, scale, entity);
  67.         body.render(scale);
  68. //        setPartRotation(neck, neck.rotateAngleX + 0.2F, 0.0F, 0.0F);
  69. //        setPartRotation(rightLeg[0], rightLeg[0].rotateAngleX + 0.2F, 0.0F, 0.0F);
  70. //        rightLeg[0].render(scale);
  71.         GL11.glPopMatrix();
  72.        
  73.     }
  74.  
  75.     @Override
  76.     public void setLivingAnimations(EntityLivingBase entitylivingbaseIn, float p_78086_2_, float p_78086_3_, float partialTickTime) {
  77.         super.setLivingAnimations(entitylivingbaseIn, p_78086_2_, p_78086_3_, partialTickTime);
  78.     }
  79.  
  80.     @Override
  81.     public void setModelAttributes(ModelBase model) {
  82.         super.setModelAttributes(model);
  83.     }
  84.    
  85.     private void setPartRotation(ModelRenderer part, float...rotateAngle) throws IllegalArgumentException {
  86.        
  87.         if(rotateAngle.length != 3)
  88.             throw new IllegalArgumentException();
  89.        
  90.         part.rotateAngleX = rotateAngle[0];
  91.         part.rotateAngleY = rotateAngle[1];
  92.         part.rotateAngleZ = rotateAngle[2];
  93.        
  94.     }
  95.  
  96. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement