Package com.mojang.minecraft.mob

Source Code of com.mojang.minecraft.mob.Sheep

package com.mojang.minecraft.mob;

import com.mojang.minecraft.Entity;
import com.mojang.minecraft.item.Item;
import com.mojang.minecraft.level.Level;
import com.mojang.minecraft.level.tile.Block;
import com.mojang.minecraft.mob.QuadrupedMob;
import com.mojang.minecraft.mob.Sheep$1;
import com.mojang.minecraft.model.AnimalModel;
import com.mojang.minecraft.player.Player;
import com.mojang.minecraft.render.TextureManager;
import org.lwjgl.opengl.GL11;

public class Sheep extends QuadrupedMob {

   public static final long serialVersionUID = 0L;
   public boolean hasFur = true;
   public boolean grazing = false;
   public int grazingTime = 0;
   public float graze;
   public float grazeO;


   public Sheep(Level var1, float var2, float var3, float var4) {
      super(var1, var2, var3, var4);
      this.setSize(1.4F, 1.72F);
      this.setPos(var2, var3, var4);
      this.heightOffset = 1.72F;
      this.modelName = "sheep";
      this.textureName = "/mob/sheep.png";
      this.ai = new Sheep$1(this);
   }

   public void aiStep() {
      super.aiStep();
      this.grazeO = this.graze;
      if(this.grazing) {
         this.graze += 0.2F;
      } else {
         this.graze -= 0.2F;
      }

      if(this.graze < 0.0F) {
         this.graze = 0.0F;
      }

      if(this.graze > 1.0F) {
         this.graze = 1.0F;
      }

   }

   public void die(Entity var1) {
      if(var1 != null) {
         var1.awardKillScore(this, 10);
      }

      int var2 = (int)(Math.random() + Math.random() + 1.0D);

      for(int var3 = 0; var3 < var2; ++var3) {
         this.level.addEntity(new Item(this.level, this.x, this.y, this.z, Block.BROWN_MUSHROOM.id));
      }

      super.die(var1);
   }

   public void hurt(Entity var1, int var2) {
      if(this.hasFur && var1 instanceof Player) {
         this.hasFur = false;
         int var3 = (int)(Math.random() * 3.0D + 1.0D);

         for(var2 = 0; var2 < var3; ++var2) {
            this.level.addEntity(new Item(this.level, this.x, this.y, this.z, Block.WHITE_WOOL.id));
         }

      } else {
         super.hurt(var1, var2);
      }
   }

   public void renderModel(TextureManager var1, float var2, float var3, float var4, float var5, float var6, float var7) {
      AnimalModel var8;
      float var9 = (var8 = (AnimalModel)modelCache.getModel(this.modelName)).head.y;
      float var10 = var8.head.z;
      var8.head.y += (this.grazeO + (this.graze - this.grazeO) * var3) * 8.0F;
      var8.head.z -= this.grazeO + (this.graze - this.grazeO) * var3;
      super.renderModel(var1, var2, var3, var4, var5, var6, var7);
      if(this.hasFur) {
         GL11.glBindTexture(3553, var1.load("/mob/sheep_fur.png"));
         GL11.glDisable(2884);
         AnimalModel var11;
         (var11 = (AnimalModel)modelCache.getModel("sheep.fur")).head.yaw = var8.head.yaw;
         var11.head.pitch = var8.head.pitch;
         var11.head.y = var8.head.y;
         var11.head.x = var8.head.x;
         var11.body.yaw = var8.body.yaw;
         var11.body.pitch = var8.body.pitch;
         var11.leg1.pitch = var8.leg1.pitch;
         var11.leg2.pitch = var8.leg2.pitch;
         var11.leg3.pitch = var8.leg3.pitch;
         var11.leg4.pitch = var8.leg4.pitch;
         var11.head.render(var7);
         var11.body.render(var7);
         var11.leg1.render(var7);
         var11.leg2.render(var7);
         var11.leg3.render(var7);
         var11.leg4.render(var7);
      }

      var8.head.y = var9;
      var8.head.z = var10;
   }
}
TOP

Related Classes of com.mojang.minecraft.mob.Sheep

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.