unify item creation in curios and normal inventory

this also allows creation of placeholders within curios containers

(cherry picked from commit a70605a8b6)
This commit is contained in:
EoD 2025-07-10 19:14:52 +00:00 committed by github-actions[bot]
parent 3651c351cd
commit 6adb8c2622
2 changed files with 2 additions and 4 deletions

View File

@ -72,9 +72,7 @@ public class ModsSupport {
}
String serialized = entry.getValue();
try {
String nbtString = VanillaSync.deserializeString(serialized);
CompoundTag tag = VanillaSync.snbtToFixedCompoundTag(nbtString);
ItemStack stack = ItemStack.of(tag);
ItemStack stack = VanillaSync.deserializeAndCreatePlaceholderIfNeeded(serialized);
if (handler.getCurios().containsKey(slotType)) {
ICurioStacksHandler stacksHandler = handler.getCurios().get(slotType);
IDynamicStackHandler dynStacks = stacksHandler.getStacks();

View File

@ -249,7 +249,7 @@ public class VanillaSync {
}
// deserialize item and potentially create placeholders
private static ItemStack deserializeAndCreatePlaceholderIfNeeded(String serializedNbt)
public static ItemStack deserializeAndCreatePlaceholderIfNeeded(String serializedNbt)
throws CommandSyntaxException {
if (serializedNbt == null || serializedNbt.isEmpty() || serializedNbt.equals("B64:e30=")) {
// Check for empty NBT (Base64 encoded '{}')