private PathEntity a( Entity entity, PathPoint pathpoint, PathPoint pathpoint1, PathPoint pathpoint2, float f) { pathpoint.e = 0.0F; pathpoint.f = pathpoint.b(pathpoint1); pathpoint.g = pathpoint.f; this.b.a(); this.b.a(pathpoint); PathPoint pathpoint3 = pathpoint; while (!this.b.e()) { PathPoint pathpoint4 = this.b.c(); if (pathpoint4.equals(pathpoint1)) { return this.a(pathpoint, pathpoint1); } if (pathpoint4.b(pathpoint1) < pathpoint3.b(pathpoint1)) { pathpoint3 = pathpoint4; } pathpoint4.i = true; int i = this.b(entity, pathpoint4, pathpoint2, pathpoint1, f); for (int j = 0; j < i; ++j) { PathPoint pathpoint5 = this.d[j]; float f1 = pathpoint4.e + pathpoint4.b(pathpoint5); if (!pathpoint5.a() || f1 < pathpoint5.e) { pathpoint5.h = pathpoint4; pathpoint5.e = f1; pathpoint5.f = pathpoint5.b(pathpoint1); if (pathpoint5.a()) { this.b.a(pathpoint5, pathpoint5.e + pathpoint5.f); } else { pathpoint5.g = pathpoint5.e + pathpoint5.f; this.b.a(pathpoint5); } } } } if (pathpoint3 == pathpoint) { return null; } else { return this.a(pathpoint, pathpoint3); } }