From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Aikar Date: Sat, 10 Mar 2018 16:33:15 -0500 Subject: [PATCH] Prevent Frosted Ice from loading/holding chunks 1.17: Shouldn't be needed as blocks no longer tick without at least 1 radius chunk loaded. diff --git a/src/main/java/net/minecraft/world/level/block/FrostedIceBlock.java b/src/main/java/net/minecraft/world/level/block/FrostedIceBlock.java index a40dd86e37c07644d563b3b7cfb0dacb13ad3a90..223b23545b86534c9c4e6e8b9bc10b1a11c2dba3 100644 --- a/src/main/java/net/minecraft/world/level/block/FrostedIceBlock.java +++ b/src/main/java/net/minecraft/world/level/block/FrostedIceBlock.java @@ -38,7 +38,8 @@ public class FrostedIceBlock extends IceBlock { for(Direction direction : Direction.values()) { mutableBlockPos.setWithOffset(pos, direction); - BlockState blockState = world.getBlockState(mutableBlockPos); + BlockState blockState = world.getBlockStateIfLoaded(mutableBlockPos); // Paper + if (blockState == null) { continue; } // Paper if (blockState.is(this) && !this.slightlyMelt(blockState, world, mutableBlockPos)) { world.scheduleTick(mutableBlockPos, this, Mth.nextInt(random, world.paperConfig().environment.frostedIce.delay.min, world.paperConfig().environment.frostedIce.delay.max)); // Paper - use configurable min/max delay } @@ -75,7 +76,10 @@ public class FrostedIceBlock extends IceBlock { for(Direction direction : Direction.values()) { mutableBlockPos.setWithOffset(pos, direction); - if (world.getBlockState(mutableBlockPos).is(this)) { + // Paper start + BlockState blockState = world.getBlockStateIfLoaded(mutableBlockPos); + if (blockState != null && blockState.is(this)) { + // Paper end ++i; if (i >= maxNeighbors) { return false;