chore: minor improvements to processing-related code (#2271)

This commit is contained in:
Jordan
2023-06-06 18:21:02 +01:00
committed by GitHub
parent bdb170a5ca
commit 5504811f11
7 changed files with 16 additions and 20 deletions

View File

@ -824,14 +824,15 @@ public class CuboidRegion extends AbstractRegion implements FlatRegion {
boolean trimX = lowerX != 0 || upperX != 15;
boolean trimZ = lowerZ != 0 || upperZ != 15;
if (!(trimX || trimZ)) {
return set;
}
for (int layer = get.getMinSectionPosition(); layer < get.getMaxSectionPosition(); layer++) {
if (!set.hasSection(layer)) {
continue;
}
char[] arr = Objects.requireNonNull(set.loadIfPresent(layer)); // This shouldn't be null if above is true
if (!(trimX || trimZ)) {
continue;
}
int indexY = 0;
for (int y = 0; y < 16; y++, indexY += 256) { // For each y layer within a chunk section
int index;

View File

@ -401,11 +401,17 @@ public interface Region extends Iterable<BlockVector3>, Cloneable, IBatchProcess
// contains some
boolean processExtra = false;
for (int layer = getMinimumY() >> 4; layer <= getMaximumY() >> 4; layer++) {
if (!set.hasSection(layer)) {
continue;
}
int by = layer << 4;
int ty = by + 15;
if (!containsEntireCuboid(bx, tx, by, ty, bz, tz)) {
processExtra = true;
char[] arr = set.load(layer);
char[] arr = set.loadIfPresent(layer);
if (arr == null) {
continue;
}
for (int y = 0, index = 0; y < 16; y++) {
for (int z = 0; z < 16; z++) {
for (int x = 0; x < 16; x++, index++) {