From 5cd7f36b9eb3b9667a576d802af2c173fa4f19a0 Mon Sep 17 00:00:00 2001 From: FalsePattern <30945458+FalsePattern@users.noreply.github.com> Date: Wed, 19 Apr 2023 19:29:41 +0200 Subject: [PATCH] fix null value being returned --- .../chunk/internal/ChunkDataRegistryImpl.java | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/falsepattern/chunk/internal/ChunkDataRegistryImpl.java b/src/main/java/com/falsepattern/chunk/internal/ChunkDataRegistryImpl.java index 4824400..e0c2a73 100644 --- a/src/main/java/com/falsepattern/chunk/internal/ChunkDataRegistryImpl.java +++ b/src/main/java/com/falsepattern/chunk/internal/ChunkDataRegistryImpl.java @@ -160,16 +160,21 @@ public class ChunkDataRegistryImpl { return root; } val domain = manager.domain(); + val id = manager.id(); NBTTagCompound domainNBT; if (root.hasKey(domain)) { + domainNBT = root.getCompoundTag(domain); + } else { domainNBT = new NBTTagCompound(); root.setTag(domain, domainNBT); - } else { - domainNBT = root.getCompoundTag(domain); } - val subNBT = new NBTTagCompound(); - domainNBT.setTag(manager.id(), subNBT); - return subNBT; + if (domainNBT.hasKey(id)) { + return domainNBT.getCompoundTag(id); + } else { + val subNBT = new NBTTagCompound(); + domainNBT.setTag(id, subNBT); + return subNBT; + } } private static NBTTagCompound getManagerNBT(boolean privileged, NBTTagCompound root, ChunkDataManager manager) { @@ -178,11 +183,11 @@ public class ChunkDataRegistryImpl { } val domain = manager.domain(); if (!root.hasKey(domain)) { - return null; + return new NBTTagCompound(); } val domainNBT = root.getCompoundTag(domain); if (!domainNBT.hasKey(manager.id())) { - return null; + return new NBTTagCompound(); } return domainNBT.getCompoundTag(manager.id()); }