public Entity attackTarget = null;
public void tick(Level var1, Mob var2) {
++this.noActionTime;
Entity var3;
if(this.noActionTime > 600 && this.random.nextInt(800) == 0 && (var3 = var1.getPlayer()) != null) {
float var4 = var3.x - var2.x;
float var5 = var3.y - var2.y;
float var6 = var3.z - var2.z;
if(var4 * var4 + var5 * var5 + var6 * var6 < 1024.0F) {
this.noActionTime = 0;
} else {
var2.remove();
}
}
this.level = var1;
this.mob = var2;
if(this.attackDelay > 0) {
--this.attackDelay;
}
if(var2.health <= 0) {
this.jumping = false;
this.xxa = 0.0F;
this.yya = 0.0F;
this.yRotA = 0.0F;
} else {
this.update();
}
boolean var7 = var2.isInWater();
boolean var9 = var2.isInLava();
if(this.jumping) {
if(var7) {
var2.yd += 0.04F;
} else if(var9) {
var2.yd += 0.04F;
} else if(var2.onGround) {
this.jumpFromGround();
}
}
this.xxa *= 0.98F;
this.yya *= 0.98F;
this.yRotA *= 0.9F;
var2.travel(this.xxa, this.yya);
List var11;
if((var11 = var1.findEntities(var2, var2.bb.grow(0.2F, 0.0F, 0.2F))) != null && var11.size() > 0) {
for(int var8 = 0; var8 < var11.size(); ++var8) {
Entity var10;
if((var10 = (Entity)var11.get(var8)).isPushable()) {
var10.push(var2);
}
}
}
}