Advertisement
ZornTaov

ModelTank

Mar 2nd, 2011
128
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 9.30 KB | None | 0 0
  1. package net.minecraft.src;
  2. // Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
  3. // Jad home page: http://www.kpdus.com/jad.html
  4. // Decompiler options: packimports(3) braces deadcode
  5.  
  6. import java.io.PrintStream;
  7. public class ModelTank extends ModelBase
  8. {
  9.  
  10.     public ModelTank()
  11.     {
  12.     //Origin
  13.     Origin = new Bone(0, 0, 0, 0);
  14.     Origin.setOffset(3.0F, -7F, 0.0F);
  15.     //bones
  16.     turret = new Bone(0, -3.141593F / 2, 0, 8, Origin);
  17.     muzzle = new Bone(0, -3.141593F / 2, 0, 18, turret);
  18.     end = new Bone(0, -3.141593F / 2, 0, 2, muzzle);
  19.    
  20.         sideModels = new ModelRendererTurbo[boxes];
  21.     //texture placement
  22.         sideModels[0] = new ModelRendererTurbo(0, 10, 128, 64);//floor
  23.         sideModels[1] = new ModelRendererTurbo(0, 0, 128, 64);//walls
  24.         sideModels[2] = new ModelRendererTurbo(0, 0, 128, 64);
  25.         sideModels[3] = new ModelRendererTurbo(0, 0, 128, 64);
  26.         sideModels[4] = new ModelRendererTurbo(0, 0, 128, 64);
  27.     sideModels[5] = new ModelRendererTurbo(36, 0, 128, 64);//wheels
  28.         sideModels[6] = new ModelRendererTurbo(36, 0, 128, 64);
  29.         sideModels[7] = new ModelRendererTurbo(36, 0, 128, 64);
  30.         sideModels[8] = new ModelRendererTurbo(36, 0, 128, 64);
  31.         sideModels[9] = new ModelRendererTurbo(36, 0, 128, 64);
  32.         sideModels[10] = new ModelRendererTurbo(36, 0, 128, 64);
  33.     sideModels[11] = new ModelRendererTurbo(52, 0, 128, 64);//smokestack
  34.         sideModels[12] = new ModelRendererTurbo(52, 0, 128, 64);
  35.     sideModels[13] = new ModelRendererTurbo(52, 0, 128, 64);
  36.         sideModels[14] = new ModelRendererTurbo(52, 0, 128, 64);
  37.     sideModels[15] = new ModelRendererTurbo(22, 4, 128, 64);//front claws
  38.     sideModels[16] = new ModelRendererTurbo(22, 4, 128, 64);
  39.     sideModels[17] = new ModelRendererTurbo(22, 4, 128, 64);
  40.     sideModels[18] = new ModelRendererTurbo(22, 4, 128, 64);
  41.     sideModels[19] = new ModelRendererTurbo(22, 4, 128, 64);
  42.     sideModels[20] = new ModelRendererTurbo(22, 4, 128, 64);
  43.     sideModels[21] = new ModelRendererTurbo(22, 4, 128, 64);//front claws(bottom half)
  44.     sideModels[22] = new ModelRendererTurbo(22, 4, 128, 64);
  45.     sideModels[23] = new ModelRendererTurbo(22, 4, 128, 64);
  46.     sideModels[24] = new ModelRendererTurbo(22, 4, 128, 64);
  47.     sideModels[25] = new ModelRendererTurbo(22, 4, 128, 64);
  48.     sideModels[26] = new ModelRendererTurbo(22, 4, 128, 64);
  49.     sideModels[27] = new ModelRendererTurbo(1, 1, 128, 64);//front plates
  50.     sideModels[28] = new ModelRendererTurbo(1, 1, 128, 64);
  51.     sideModels[29] = new ModelRendererTurbo(0, 10, 128, 64);//top
  52.     sideModels[30] = new ModelRendererTurbo(0, 0, 128, 64);//Turret
  53.     sideModels[31] = new ModelRendererTurbo(0, 0, 128, 64);
  54.     sideModels[32] = new ModelRendererTurbo(0, 0, 128, 64);
  55.     sideModels[33] = new ModelRendererTurbo(0, 0, 128, 64);
  56.     sideModels[34] = new ModelRendererTurbo(0, 0, 128, 64);
  57.     sideModels[35] = new ModelRendererTurbo(0, 0, 128, 64);
  58.     sideModels[36] = new ModelRendererTurbo(0, 0, 128, 64);
  59.     sideModels[37] = new ModelRendererTurbo(0, 0, 128, 64);//muzzle
  60.     sideModels[38] = new ModelRendererTurbo(0, 0, 128, 64);//muzzle
  61.  
  62.     //box creation and COR movement
  63.         sideModels[0].addBox(-10F, -8F, -1F, 20, 16, 2, 0.0F);//floor
  64.         sideModels[0].setPosition(0.0F, 6F, 0.0F);
  65.         sideModels[1].addBox(-8F, -7F, -1F, 16, 8, 2, 0.0F);//walls
  66.         sideModels[1].setPosition(-9F, 4F, 0.0F);
  67.         sideModels[2].addBox(-8F, -7F, -1F, 16, 8, 2, 0.0F);
  68.         sideModels[2].setPosition(9F, 4F, 0.0F);
  69.         sideModels[3].addBox(-8F, -7F, -1F, 16, 8, 2, 0.0F);
  70.         sideModels[3].setPosition(0.0F, 4F, -7F);
  71.         sideModels[4].addBox(-8F, -7F, -1F, 16, 8, 2, 0.0F);
  72.         sideModels[4].setPosition(0.0F, 4F, 7F);
  73.     sideModels[5].addBox(-2F, -2F, 0F, 4, 4, 3, 0.0F);//wheels
  74.         sideModels[5].setPosition(0.0F, 6F, 8F);
  75.     sideModels[6].addBox(-2F, -2F, 0F, 4, 4, 3, 0.0F);
  76.         sideModels[6].setPosition(6.0F, 6F, 8F);
  77.     sideModels[7].addBox(-2F, -2F, 0F, 4, 4, 3, 0.0F);
  78.         sideModels[7].setPosition(-6.0F, 6F, 8F);
  79.     sideModels[8].addBox(-2F, -2F, 0F, 4, 4, 3, 0.0F);
  80.         sideModels[8].setPosition(0.0F, 6F, -8F);
  81.     sideModels[9].addBox(-2F, -2F, 0F, 4, 4, 3, 0.0F);
  82.         sideModels[9].setPosition(6.0F, 6F, -8F);
  83.     sideModels[10].addBox(-2F, -2F, 0F, 4, 4, 3, 0.0F);
  84.         sideModels[10].setPosition(-6.0F, 6F, -8F);
  85.     sideModels[11].addBox(-2F, -2F, -2F, 4, 4, 4, 0.0F); //smokestacks
  86.         sideModels[11].setPosition(12.0F, 3F, 3F);
  87.     sideModels[12].addBox(-2F, -2F, -2F, 4, 4, 4, 0.0F);
  88.         sideModels[12].setPosition(12.0F, 3F, -3F);
  89.     sideModels[13].addBox(-2F, -5F, -2F, 4, 10, 4, 0.0F);
  90.         sideModels[13].setPosition(16.0F, 0F, 3F);
  91.     sideModels[14].addBox(-2F, -5F, -2F, 4, 10, 4, 0.0F);
  92.         sideModels[14].setPosition(16.0F, 0F, -3F);
  93.     sideModels[15].addBox(-1F, -2F, -2F, 1, 4, 1, 0.0F);//front claws
  94.         sideModels[15].setPosition(-15.0F, 5F, 0F);
  95.     sideModels[16].addBox(-1F, -2F, -4F, 1, 4, 1, 0.0F);
  96.         sideModels[16].setPosition(-15.0F, 5F, 0F);
  97.     sideModels[17].addBox(-1F, -2F, -6F, 1, 4, 1, 0.0F);
  98.         sideModels[17].setPosition(-15.0F, 5F, 0F);
  99.     sideModels[18].addBox(-1F, -2F, 1F, 1, 4, 1, 0.0F);
  100.         sideModels[18].setPosition(-15.0F, 5F, 0F);
  101.     sideModels[19].addBox(-1F, -2F, 3F, 1, 4, 1, 0.0F);
  102.         sideModels[19].setPosition(-15.0F, 5F, 0F);
  103.     sideModels[20].addBox(-1F, -2F, 5F, 1, 4, 1, 0.0F);
  104.         sideModels[20].setPosition(-15.0F, 5F, 0F);
  105.     sideModels[21].addBox(0F, 0F, -2F, 3, 1, 1, 0.0F);//front claws(bottom half)
  106.         sideModels[21].setPosition(-15.0F, 6F, 0F);
  107.     sideModels[22].addBox(0F, 0F, -4F, 3, 1, 1, 0.0F);
  108.         sideModels[22].setPosition(-15.0F, 6F, 0F);
  109.     sideModels[23].addBox(0F, 0F, -6F, 3, 1, 1, 0.0F);
  110.         sideModels[23].setPosition(-15.0F, 6F, 0F);
  111.     sideModels[24].addBox(0F, 0F, 1F, 3, 1, 1, 0.0F);
  112.         sideModels[24].setPosition(-15.0F, 6F, 0F);
  113.     sideModels[25].addBox(0F, 0F, 3F, 3, 1, 1, 0.0F);
  114.         sideModels[25].setPosition(-15.0F, 6F, 0F);
  115.     sideModels[26].addBox(0F, 0F, 5F, 3, 1, 1, 0.0F);
  116.         sideModels[26].setPosition(-15.0F, 6F, 0F);
  117.     sideModels[27].addBox(-7F, -7F, 0F, 14, 9, 1, 0.0F);//front plates
  118.         sideModels[27].setPosition(-11.0F, 5F, 0F);
  119.     sideModels[28].addBox(-6F, -7F, 0F, 12, 8, 1, 0.0F);
  120.         sideModels[28].setPosition(-12.0F, 6F, 0F);
  121.     sideModels[29].addBox(-10F, -8F, -1F, 20, 16, 2, 0.0F);//top
  122.         sideModels[29].setPosition(0.0F, -4F, 0.0F);
  123.     sideModels[30].addBox(-6F, -2F, -6F, 12, 4, 12, 0.0F);//turret
  124.         sideModels[30].setPosition(3.0F, -7F, 0.0F);
  125.     sideModels[31].addBox(-4F, 0F, -8F, 8, 2, 2, 0.0F);
  126.         sideModels[31].setPosition(3.0F, -7F, 0.0F);
  127.     sideModels[32].addBox(-4F, 0F, 6F, 8, 2, 2, 0.0F);
  128.         sideModels[32].setPosition(3.0F, -7F, 0.0F);
  129.     sideModels[33].addBox(6F, 0F, -4F, 2, 2, 8, 0.0F);
  130.         sideModels[33].setPosition(3.0F, -7F, 0.0F);
  131.     sideModels[34].addBox(-10F, -2F, -4F, 4, 4, 2, 0.0F);
  132.         sideModels[34].setPosition(3.0F, -7F, 0.0F);
  133.     sideModels[35].addBox(-10F, -2F, 2F, 4, 4, 2, 0.0F);
  134.         sideModels[35].setPosition(3.0F, -7F, 0.0F);
  135.     sideModels[36].addBox(-3F, -2F, -6F, 0, 4, 12, 0.0F);
  136.         sideModels[36].setPosition(3.0F, -7F, 0.0F);
  137.     sideModels[37].addBox(-2F, -2F, -2F, 4, 4, 20, 0.0F);//muzzle
  138.         sideModels[37].setPosition(0.0F, 0F, 0.0F);
  139.     //sideModels[36].doMirror(true,false,false);
  140.     sideModels[38].addBox(-3F, -3F, -1F, 6, 6, 2, 0.0F);//muzzle
  141.         sideModels[38].setPosition(0.0F, 0F, 0.0F);
  142.     //rotations
  143.         sideModels[0].rotateAngleX = 1.570796F;//floor
  144.         sideModels[1].rotateAngleY = 4.712389F;//walls
  145.         sideModels[2].rotateAngleY = 1.570796F;
  146.         sideModels[3].rotateAngleY = 3.141593F;
  147.     for(int i = 8; i < 11; i++)//wheels
  148.     {
  149.         sideModels[i].rotateAngleY = 3.141593F;
  150.     }
  151.     sideModels[11].rotateAngleZ = 1.570796F;//smokestack
  152.     sideModels[12].rotateAngleZ = 1.570796F;
  153.     sideModels[27].rotateAngleY = 1.570796F;//front plates
  154.     sideModels[28].rotateAngleY = 1.570796F;
  155.     sideModels[29].rotateAngleX = 4.712389F;//top
  156.     muzzle.addModel(sideModels[37],true);
  157.     end.addModel(sideModels[38],true);
  158.    
  159.     //muzzle.relativeAngles.angleZ = 1.570796F;
  160.     }
  161.  
  162.     public void render(float f, float f1, float f2, float f3, float f4, float f5)
  163.     {
  164.     setRotationAngles(f, f1, f2, f3, f4, f5);
  165.    
  166.         Origin.prepareDraw();
  167.         Origin.setAnglesToModels();
  168.         for(int i = 37; i < boxes; i++)
  169.         {//if(i <= 5 && i >= 10)
  170.             sideModels[i].render(f5*2F);
  171.         }
  172.     if(tankCS.tankCanShoot == 0)
  173.     {
  174.         muzzleAngle = end.getAbsoluteAngle();
  175.         muzzlePos = end.getPosition();
  176.        
  177.         tankCS.tankCanShoot = 40;
  178.     }
  179.     }
  180.  
  181.     public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5)
  182.     {
  183.     /*if(tank.riddenByEntity != null){
  184.     double d11 = tank.getSpeed(); // where tankSpeed = Math.sqrt(motionX * motionX + motionZ * motionZ);
  185.     //System.out.println((new StringBuilder("tankspeed ")).append(d11).append(" motionX ").append(motionX).append(" motionZ ").append(motionZ).toString());
  186.     for(int i = 5; i < 11; i++)
  187.     {
  188.         sideModels[i].rotateAngleZ -= d11*Math.PI;
  189.     }}*/
  190.     }
  191.     public Angle3D muzzleAngle;
  192.     public Vec3D muzzlePos;
  193.     private int boxes = 39;
  194.     public Bone Origin;
  195.     public Bone muzzle;
  196.     public Bone end;
  197.     public Bone back;
  198.     public Bone up;
  199.     public Bone turret;
  200.     public EntityTank tankCS;
  201.     public ModelRendererTurbo sideModels[];
  202. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement