diff --git a/src/main/java/de/bixilon/minosoft/util/KUtil.kt b/src/main/java/de/bixilon/minosoft/util/KUtil.kt index 55af632b5..20889cbe0 100644 --- a/src/main/java/de/bixilon/minosoft/util/KUtil.kt +++ b/src/main/java/de/bixilon/minosoft/util/KUtil.kt @@ -307,6 +307,7 @@ object KUtil { } } + @Deprecated("Kutil 1.16") inline fun Array.trySet(index: Int, value: T): Boolean { if (index < 0 || index >= size) { return false @@ -315,6 +316,7 @@ object KUtil { return true } + @Deprecated("Kutil 1.16") inline fun BooleanArray.trySet(index: Int, value: Boolean): Boolean { if (index < 0 || index >= size) { return false @@ -323,10 +325,21 @@ object KUtil { return true } + @Deprecated("Kutil 1.16") inline fun IntArray.getOrElse(index: Int, `else`: Int): Int { if (index < 0 || index >= this.size) { return `else` } return this[index] } + + @Deprecated("Kutil 1.16") + fun Array.isEmptyOrOnlyNull(): Boolean { + for (entry in this) { + if (entry != null) { + return false + } + } + return true + } } diff --git a/src/main/java/de/bixilon/minosoft/util/chunk/ChunkUtil.kt b/src/main/java/de/bixilon/minosoft/util/chunk/ChunkUtil.kt index 2ef0407e3..38793d5e7 100644 --- a/src/main/java/de/bixilon/minosoft/util/chunk/ChunkUtil.kt +++ b/src/main/java/de/bixilon/minosoft/util/chunk/ChunkUtil.kt @@ -39,6 +39,7 @@ import de.bixilon.minosoft.protocol.protocol.ProtocolVersions.V_18W43A import de.bixilon.minosoft.protocol.protocol.ProtocolVersions.V_19W36A import de.bixilon.minosoft.protocol.protocol.ProtocolVersions.V_1_13_2 import de.bixilon.minosoft.protocol.protocol.ProtocolVersions.V_21W37A +import de.bixilon.minosoft.util.KUtil.isEmptyOrOnlyNull import java.lang.StrictMath.abs import java.util.* @@ -203,7 +204,9 @@ object ChunkUtil { } } - chunkData.blocks = sectionBlocks + if (!sectionBlocks.isEmptyOrOnlyNull()) { + chunkData.blocks = sectionBlocks + } if (lightReceived > 0) { chunkData.light = light }