diff --git a/Habitica/src/main/java/com/magicmicky/habitrpgwrapper/lib/utils/ItemDataListDeserializer.java b/Habitica/src/main/java/com/magicmicky/habitrpgwrapper/lib/utils/ItemDataListDeserializer.java index f232b213a..8768e1e99 100644 --- a/Habitica/src/main/java/com/magicmicky/habitrpgwrapper/lib/utils/ItemDataListDeserializer.java +++ b/Habitica/src/main/java/com/magicmicky/habitrpgwrapper/lib/utils/ItemDataListDeserializer.java @@ -50,7 +50,18 @@ public class ItemDataListDeserializer implements JsonDeserializer } for (Map.Entry entry : json.getAsJsonObject().entrySet()) { - ItemData item = context.deserialize(entry.getValue(), ItemData.class); + ItemData item; + if (entry.getValue().isJsonObject()) { + item = context.deserialize(entry.getValue(), ItemData.class); + } else { + item = new ItemData(); + item.key = entry.getKey(); + if (entry.getValue().isJsonNull()) { + item.owned = null; + } else { + item.owned = entry.getValue().getAsBoolean(); + } + } vals.add(item); } TransactionManager.getInstance().addTransaction(new SaveModelTransaction<>(ProcessModelInfo.withModels(vals)));