Upstream Paper

This commit is contained in:
Sotr
2019-03-21 02:58:59 +08:00
parent cc8cb0bb4c
commit 6498e68a50
28 changed files with 263 additions and 282 deletions

View File

@@ -1688,14 +1688,14 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
int l = MathHelper.f(axisalignedbb.maxY);
int i1 = MathHelper.floor(axisalignedbb.minZ);
int j1 = MathHelper.f(axisalignedbb.maxZ);
BlockPosition.b blockposition_b = BlockPosition.b.r();
BlockPosition.PooledBlockPosition blockposition_pooledblockposition = BlockPosition.PooledBlockPosition.r();
Throwable throwable = null;
try {
for (int k1 = i; k1 < j; ++k1) {
for (int l1 = k; l1 < l; ++l1) {
for (int i2 = i1; i2 < j1; ++i2) {
IBlockData iblockdata = this.getType(blockposition_b.c(k1, l1, i2));
IBlockData iblockdata = this.getType(blockposition_pooledblockposition.c(k1, l1, i2));
if (!iblockdata.isAir()) {
boolean flag = true;
@@ -1711,15 +1711,15 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
throwable = throwable1;
throw throwable1;
} finally {
if (blockposition_b != null) {
if (blockposition_pooledblockposition != null) {
if (throwable != null) {
try {
blockposition_b.close();
blockposition_pooledblockposition.close();
} catch (Throwable throwable2) {
throwable.addSuppressed(throwable2);
}
} else {
blockposition_b.close();
blockposition_pooledblockposition.close();
}
}
@@ -1735,14 +1735,14 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
int j1 = MathHelper.f(axisalignedbb.maxZ);
if (this.isAreaLoaded(i, k, i1, j, l, j1, true)) {
BlockPosition.b blockposition_b = BlockPosition.b.r();
BlockPosition.PooledBlockPosition blockposition_pooledblockposition = BlockPosition.PooledBlockPosition.r();
Throwable throwable = null;
try {
for (int k1 = i; k1 < j; ++k1) {
for (int l1 = k; l1 < l; ++l1) {
for (int i2 = i1; i2 < j1; ++i2) {
Block block = this.getType(blockposition_b.c(k1, l1, i2)).getBlock();
Block block = this.getType(blockposition_pooledblockposition.c(k1, l1, i2)).getBlock();
if (block == Blocks.FIRE || block == Blocks.LAVA) {
boolean flag = true;
@@ -1758,15 +1758,15 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
throwable = throwable1;
throw throwable1;
} finally {
if (blockposition_b != null) {
if (blockposition_pooledblockposition != null) {
if (throwable != null) {
try {
blockposition_b.close();
blockposition_pooledblockposition.close();
} catch (Throwable throwable2) {
throwable.addSuppressed(throwable2);
}
} else {
blockposition_b.close();
blockposition_pooledblockposition.close();
}
}
@@ -1786,14 +1786,14 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
int j1 = MathHelper.f(axisalignedbb.maxZ);
if (this.isAreaLoaded(i, k, i1, j, l, j1, true)) {
BlockPosition.b blockposition_b = BlockPosition.b.r();
BlockPosition.PooledBlockPosition blockposition_pooledblockposition = BlockPosition.PooledBlockPosition.r();
Throwable throwable = null;
try {
for (int k1 = i; k1 < j; ++k1) {
for (int l1 = k; l1 < l; ++l1) {
for (int i2 = i1; i2 < j1; ++i2) {
IBlockData iblockdata = this.getType(blockposition_b.c(k1, l1, i2));
IBlockData iblockdata = this.getType(blockposition_pooledblockposition.c(k1, l1, i2));
if (iblockdata.getBlock() == block) {
IBlockData iblockdata1 = iblockdata;
@@ -1809,15 +1809,15 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
throwable = throwable1;
throw throwable1;
} finally {
if (blockposition_b != null) {
if (blockposition_pooledblockposition != null) {
if (throwable != null) {
try {
blockposition_b.close();
blockposition_pooledblockposition.close();
} catch (Throwable throwable2) {
throwable.addSuppressed(throwable2);
}
} else {
blockposition_b.close();
blockposition_pooledblockposition.close();
}
}
@@ -1835,14 +1835,14 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
int i1 = MathHelper.floor(axisalignedbb.minZ);
int j1 = MathHelper.f(axisalignedbb.maxZ);
MaterialPredicate materialpredicate = MaterialPredicate.a(material);
BlockPosition.b blockposition_b = BlockPosition.b.r();
BlockPosition.PooledBlockPosition blockposition_pooledblockposition = BlockPosition.PooledBlockPosition.r();
Throwable throwable = null;
try {
for (int k1 = i; k1 < j; ++k1) {
for (int l1 = k; l1 < l; ++l1) {
for (int i2 = i1; i2 < j1; ++i2) {
if (materialpredicate.test(this.getType(blockposition_b.c(k1, l1, i2)))) {
if (materialpredicate.test(this.getType(blockposition_pooledblockposition.c(k1, l1, i2)))) {
boolean flag = true;
return flag;
@@ -1856,15 +1856,15 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
throwable = throwable1;
throw throwable1;
} finally {
if (blockposition_b != null) {
if (blockposition_pooledblockposition != null) {
if (throwable != null) {
try {
blockposition_b.close();
blockposition_pooledblockposition.close();
} catch (Throwable throwable2) {
throwable.addSuppressed(throwable2);
}
} else {
blockposition_b.close();
blockposition_pooledblockposition.close();
}
}
@@ -2196,7 +2196,7 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
} else if (i >= 14) {
return i;
} else {
BlockPosition.b blockposition_b = BlockPosition.b.r();
BlockPosition.PooledBlockPosition blockposition_pooledblockposition = BlockPosition.PooledBlockPosition.r();
Throwable throwable = null;
try {
@@ -2206,8 +2206,8 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
for (int l = 0; l < k; ++l) {
EnumDirection enumdirection = aenumdirection[l];
blockposition_b.g(blockposition).c(enumdirection);
int i1 = this.getBrightness(enumskyblock, blockposition_b) - j;
blockposition_pooledblockposition.g(blockposition).c(enumdirection);
int i1 = this.getBrightness(enumskyblock, blockposition_pooledblockposition) - j;
if (i1 > i) {
i = i1;
@@ -2225,15 +2225,15 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
throwable = throwable1;
throw throwable1;
} finally {
if (blockposition_b != null) {
if (blockposition_pooledblockposition != null) {
if (throwable != null) {
try {
blockposition_b.close();
blockposition_pooledblockposition.close();
} catch (Throwable throwable2) {
throwable.addSuppressed(throwable2);
}
} else {
blockposition_b.close();
blockposition_pooledblockposition.close();
}
}
@@ -2293,7 +2293,7 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
j3 = MathHelper.a(j2 - j1);
k3 = MathHelper.a(k2 - k1);
if (i3 + j3 + k3 < 17) {
BlockPosition.b blockposition_b = BlockPosition.b.r();
BlockPosition.PooledBlockPosition blockposition_pooledblockposition = BlockPosition.PooledBlockPosition.r();
Throwable throwable = null;
try {
@@ -2306,10 +2306,10 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
int l4 = j2 + enumdirection.getAdjacentY();
int i5 = k2 + enumdirection.getAdjacentZ();
blockposition_b.c(k4, l4, i5);
int j5 = Math.max(1, this.getType(blockposition_b).b(this, blockposition_b));
blockposition_pooledblockposition.c(k4, l4, i5);
int j5 = Math.max(1, this.getType(blockposition_pooledblockposition).b(this, blockposition_pooledblockposition));
l2 = this.getBrightness(enumskyblock, blockposition_b);
l2 = this.getBrightness(enumskyblock, blockposition_pooledblockposition);
if (l2 == l3 - j5 && j < this.E.length) {
this.E[j++] = k4 - i1 + 32 | l4 - j1 + 32 << 6 | i5 - k1 + 32 << 12 | l3 - j5 << 18;
}
@@ -2318,15 +2318,15 @@ public abstract class World implements IEntityAccess, GeneratorAccess, IIBlockAc
throwable = throwable1;
throw throwable1;
} finally {
if (blockposition_b != null) {
if (blockposition_pooledblockposition != null) {
if (throwable != null) {
try {
blockposition_b.close();
blockposition_pooledblockposition.close();
} catch (Throwable throwable2) {
throwable.addSuppressed(throwable2);
}
} else {
blockposition_b.close();
blockposition_pooledblockposition.close();
}
}