fix allowPermanentBlockBreakExploits config
This commit is contained in:
@@ -51,7 +51,7 @@
|
||||
- boolean flag = i == -z || i == z;
|
||||
+ // Paper start - Perf: iterate over border chunks instead of entire square chunk area
|
||||
+ final int radius = z;
|
||||
+ boolean flag = i == -z || i == z; final boolean onBorderAlongZAxis = flag; // Paper - OBFHELPER
|
||||
+ boolean flag = i == -z || i == z; final boolean onBorderAlongZAxis = flag; // Paper - OBFHELPER
|
||||
|
||||
- for (int i1 = -z; i1 <= z; i1++) {
|
||||
- boolean flag1 = i1 == -z || i1 == z;
|
||||
@@ -82,7 +82,7 @@
|
||||
+ long featurePopulationSeed = l;
|
||||
+ final long configFeatureSeed = level.getMinecraftWorld().paperConfig().featureSeeds.features.getLong(placedFeature.feature());
|
||||
+ if (configFeatureSeed != -1) {
|
||||
+ featurePopulationSeed = worldgenRandom.setDecorationSeed(configFeatureSeed, blockPos.getX(), blockPos.getZ()); // See seededrandom.setDecorationSeed from above
|
||||
+ featurePopulationSeed = worldgenRandom.setDecorationSeed(configFeatureSeed, blockPos.getX(), blockPos.getZ()); // See WorldgenRandom.setDecorationSeed from above
|
||||
+ }
|
||||
+ worldgenRandom.setFeatureSeed(featurePopulationSeed, i3, i);
|
||||
+ // Paper end - Configurable feature seeds
|
||||
|
||||
@@ -265,7 +265,7 @@
|
||||
public boolean isEmpty() {
|
||||
return false;
|
||||
}
|
||||
@@ -711,23 +_,25 @@
|
||||
@@ -711,23 +_,24 @@
|
||||
if (this.blockEntity.getType().isValid(blockState)) {
|
||||
this.ticker.tick(LevelChunk.this.level, this.blockEntity.getBlockPos(), blockState, this.blockEntity);
|
||||
this.loggedInvalidBlockState = false;
|
||||
@@ -278,17 +278,15 @@
|
||||
- LogUtils.defer(this::getPos),
|
||||
- blockState
|
||||
- );
|
||||
- }
|
||||
+ // Paper start - Remove the Block Entity if it's invalid
|
||||
+ } else {
|
||||
+ LevelChunk.this.removeBlockEntity(this.getPos());
|
||||
+ if (!this.loggedInvalidBlockState) {
|
||||
+ this.loggedInvalidBlockState = true;
|
||||
+ LevelChunk.LOGGER.warn("Block entity {} @ {} state {} invalid for ticking:", new Object[]{LogUtils.defer(this::getType), LogUtils.defer(this::getPos), blockState});
|
||||
+ LevelChunk.LOGGER.warn("Block entity {} @ {} state {} invalid for ticking:", LogUtils.defer(this::getType), LogUtils.defer(this::getPos), blockState);
|
||||
+ }
|
||||
+ // Paper end - Remove the Block Entity if it's invalid
|
||||
+ }
|
||||
+
|
||||
}
|
||||
|
||||
profilerFiller.pop();
|
||||
} catch (Throwable var5) {
|
||||
|
||||
Reference in New Issue
Block a user