fix world scanner radius

This commit is contained in:
Leijurv 2018-09-07 18:23:05 -07:00
parent dfd2ef055e
commit 489b9dea98
No known key found for this signature in database
GPG Key ID: 44A3EA646EADAC6A
1 changed files with 6 additions and 6 deletions

View File

@ -47,13 +47,13 @@ public enum WorldScanner implements Helper {
int playerChunkX = playerFeet().getX() >> 4;
int playerChunkZ = playerFeet().getZ() >> 4;
int searchRadius = 2;
int searchRadiusSq = 0;
while (true) {
boolean allUnloaded = true;
for (int xoff = -searchRadius; xoff <= searchRadius; xoff++) {
for (int zoff = -searchRadius; zoff <= searchRadius; zoff++) {
for (int xoff = -searchRadiusSq; xoff <= searchRadiusSq; xoff++) {
for (int zoff = -searchRadiusSq; zoff <= searchRadiusSq; zoff++) {
int distance = xoff * xoff + zoff * zoff;
if (distance != searchRadius) {
if (distance != searchRadiusSq) {
continue;
}
int chunkX = xoff + playerChunkX;
@ -91,10 +91,10 @@ public enum WorldScanner implements Helper {
if (allUnloaded) {
return res;
}
if (res.size() >= max) {
if (res.size() >= max && searchRadiusSq < 26) {
return res;
}
searchRadius++;
searchRadiusSq++;
}
}
}