From bb71efc2c927d007b7baf45344fb42a94fb51377 Mon Sep 17 00:00:00 2001 From: Matthew Miller Date: Mon, 3 Aug 2020 20:46:13 +1000 Subject: [PATCH] Only freeze water source blocks. --- .../com/sk89q/worldedit/function/block/SnowSimulator.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/worldedit-core/src/main/java/com/sk89q/worldedit/function/block/SnowSimulator.java b/worldedit-core/src/main/java/com/sk89q/worldedit/function/block/SnowSimulator.java index 5f9a7eab67..c0e4df9896 100644 --- a/worldedit-core/src/main/java/com/sk89q/worldedit/function/block/SnowSimulator.java +++ b/worldedit-core/src/main/java/com/sk89q/worldedit/function/block/SnowSimulator.java @@ -34,6 +34,7 @@ public class SnowSimulator implements LayerFunction { private final BlockState snowBlock = BlockTypes.SNOW_BLOCK.getDefaultState(); private final Property snowLayersProperty = BlockTypes.SNOW.getProperty("layers"); + private final Property waterLevelProperty = BlockTypes.WATER.getProperty("level"); private final Extent extent; private final boolean stack; @@ -80,8 +81,10 @@ public boolean apply(BlockVector3 position, int depth) throws WorldEditException BlockState block = this.extent.getBlock(position); if (block.getBlockType() == BlockTypes.WATER) { - if (this.extent.setBlock(position, ice)) { - affected++; + if (block.getState(waterLevelProperty) == 0) { + if (this.extent.setBlock(position, ice)) { + affected++; + } } return false; }