package net.minecraft.server;
import com.koloboke.collect.map.hash.HashIntObjMap;
import com.koloboke.collect.map.hash.HashIntObjMaps;
public abstract class PathfinderAbstract {
protected IBlockAccess a;
protected EntityInsentient b;
protected final HashIntObjMap<PathPoint> c = HashIntObjMaps.newMutableMap(); // Torch
protected int d;
protected int e;
protected int f;
protected boolean g;
protected boolean h;
protected boolean i;
public PathfinderAbstract() {}
public void a(IBlockAccess iblockaccess, EntityInsentient entityinsentient) {
this.a = iblockaccess;
this.b = entityinsentient;
this.c.clear();
this.d = MathHelper.d(entityinsentient.width + 1.0F);
this.e = MathHelper.d(entityinsentient.length + 1.0F);
this.f = MathHelper.d(entityinsentient.width + 1.0F);
}
public void a() {
this.a = null;
this.b = null;
}
protected PathPoint a(int i, int j, int k) {
int l = PathPoint.b(i, j, k);
PathPoint pathpoint = this.c.get(l);
if (pathpoint == null) {
pathpoint = new PathPoint(i, j, k);
this.c.put(l, pathpoint);
}
return pathpoint;
}
public abstract PathPoint b();
public abstract PathPoint a(double d0, double d1, double d2);
public abstract int a(PathPoint[] apathpoint, PathPoint pathpoint, PathPoint pathpoint1, float f);
public abstract PathType a(IBlockAccess iblockaccess, int i, int j, int k, EntityInsentient entityinsentient, int l, int i1, int j1, boolean flag, boolean flag1);
public abstract PathType a(IBlockAccess iblockaccess, int i, int j, int k);
public void a(boolean flag) {
this.g = flag;
}
public void b(boolean flag) {
this.h = flag;
}
public void c(boolean flag) {
this.i = flag;
}
public boolean c() {
return this.g;
}
public boolean d() {
return this.h;
}
public boolean e() {
return this.i;
}
}