diff --git a/src/main/java/net/citizensnpcs/api/persistence/PersistenceLoader.java b/src/main/java/net/citizensnpcs/api/persistence/PersistenceLoader.java index dc32f12f..d790edae 100644 --- a/src/main/java/net/citizensnpcs/api/persistence/PersistenceLoader.java +++ b/src/main/java/net/citizensnpcs/api/persistence/PersistenceLoader.java @@ -247,6 +247,9 @@ private static Object deserialiseValue(PersistField field, DataKey root) { } } } + if (field.delegate == null && type == UUID.class) { + return UUID.fromString(root.getString("")); + } return field.delegate == null ? root.getRaw("") : field.delegate.create(root); } @@ -463,6 +466,8 @@ private static void serialiseValue(PersistField field, DataKey root, Object valu ((Persister) field.delegate).save(value, root); } else if (value instanceof Enum) { root.setRaw("", ((Enum) value).name()); + } else if (value instanceof UUID) { + root.setString("", ((UUID) value).toString()); } else { root.setRaw("", value); }