diff --git a/plugins/fancyholograms/src/main/java/com/fancyinnovations/fancyholograms/registry/HologramRegistryImpl.java b/plugins/fancyholograms/src/main/java/com/fancyinnovations/fancyholograms/registry/HologramRegistryImpl.java index 63279ede..64390ca3 100644 --- a/plugins/fancyholograms/src/main/java/com/fancyinnovations/fancyholograms/registry/HologramRegistryImpl.java +++ b/plugins/fancyholograms/src/main/java/com/fancyinnovations/fancyholograms/registry/HologramRegistryImpl.java @@ -80,6 +80,10 @@ public class HologramRegistryImpl implements HologramRegistry { @Override public void clear() { + for (Hologram hologram : holograms.values()) { + hologram.getData().getTraitTrait().onUnregister(); + } + holograms.clear(); } } diff --git a/plugins/fancyholograms/src/main/java/com/fancyinnovations/fancyholograms/storage/json/JsonStorage.java b/plugins/fancyholograms/src/main/java/com/fancyinnovations/fancyholograms/storage/json/JsonStorage.java index 047107d7..789b71f4 100644 --- a/plugins/fancyholograms/src/main/java/com/fancyinnovations/fancyholograms/storage/json/JsonStorage.java +++ b/plugins/fancyholograms/src/main/java/com/fancyinnovations/fancyholograms/storage/json/JsonStorage.java @@ -55,6 +55,7 @@ public class JsonStorage implements HologramStorage { if (u.hologram_data().name().equals(hologram.getName())) { existing[i] = union; jdb.set(hologram.getFilePath(), existing); + hologram.getTraitTrait().save(); return; } } @@ -68,6 +69,8 @@ public class JsonStorage implements HologramStorage { FancyHolograms.get().getFancyLogger().error("Failed to save hologram " + hologram.getName()); FancyHolograms.get().getFancyLogger().error(e); } + + hologram.getTraitTrait().save(); } @Override @@ -152,6 +155,7 @@ public class JsonStorage implements HologramStorage { } for (JsonDataUnion union : allTextUnions) { HologramData data = JsonAdapter.fromJson(union); + data.getTraitTrait().load(); data.setFilePath(path); holograms.add(data); }