Add files from mc-dev for diff visibility.

This commit is contained in:
GJ 2014-03-24 10:36:41 -04:00 committed by Travis Watkins
parent 7df7778ccb
commit 3abba82315
2 changed files with 99 additions and 0 deletions

View File

@ -0,0 +1,42 @@
package net.minecraft.server;
import java.util.Iterator;
import java.util.List;
public class PathfinderGoalHurtByTarget extends PathfinderGoalTarget {
boolean a;
private int b;
public PathfinderGoalHurtByTarget(EntityCreature entitycreature, boolean flag) {
super(entitycreature, false);
this.a = flag;
this.a(1);
}
public boolean a() {
int i = this.c.aJ();
return i != this.b && this.a(this.c.getLastDamager(), false);
}
public void c() {
this.c.setGoalTarget(this.c.getLastDamager());
this.b = this.c.aJ();
if (this.a) {
double d0 = this.f();
List list = this.c.world.a(this.c.getClass(), AxisAlignedBB.a(this.c.locX, this.c.locY, this.c.locZ, this.c.locX + 1.0D, this.c.locY + 1.0D, this.c.locZ + 1.0D).grow(d0, 10.0D, d0));
Iterator iterator = list.iterator();
while (iterator.hasNext()) {
EntityCreature entitycreature = (EntityCreature) iterator.next();
if (this.c != entitycreature && entitycreature.getGoalTarget() == null && !entitycreature.c(this.c.getLastDamager())) {
entitycreature.setGoalTarget(this.c.getLastDamager());
}
}
}
super.c();
}
}

View File

@ -0,0 +1,57 @@
package net.minecraft.server;
public class PathfinderGoalOcelotAttack extends PathfinderGoal {
World a;
EntityInsentient b;
EntityLiving c;
int d;
public PathfinderGoalOcelotAttack(EntityInsentient entityinsentient) {
this.b = entityinsentient;
this.a = entityinsentient.world;
this.a(3);
}
public boolean a() {
EntityLiving entityliving = this.b.getGoalTarget();
if (entityliving == null) {
return false;
} else {
this.c = entityliving;
return true;
}
}
public boolean b() {
return !this.c.isAlive() ? false : (this.b.f(this.c) > 225.0D ? false : !this.b.getNavigation().g() || this.a());
}
public void d() {
this.c = null;
this.b.getNavigation().h();
}
public void e() {
this.b.getControllerLook().a(this.c, 30.0F, 30.0F);
double d0 = (double) (this.b.width * 2.0F * this.b.width * 2.0F);
double d1 = this.b.e(this.c.locX, this.c.boundingBox.b, this.c.locZ);
double d2 = 0.8D;
if (d1 > d0 && d1 < 16.0D) {
d2 = 1.33D;
} else if (d1 < 225.0D) {
d2 = 0.6D;
}
this.b.getNavigation().a((Entity) this.c, d2);
this.d = Math.max(this.d - 1, 0);
if (d1 <= d0) {
if (this.d <= 0) {
this.d = 20;
this.b.n(this.c);
}
}
}
}