mirror of
https://github.com/FancyInnovations/FancyPlugins.git
synced 2025-12-06 07:43:36 +00:00
fancyholograms-v3: Update hologram data loading to use subdirectory structure
This commit is contained in:
@@ -49,7 +49,7 @@ public final class FancyHologramsCMD extends Command {
|
||||
|
||||
this.plugin.getRegistry().clear();
|
||||
for (World world : Bukkit.getWorlds()) {
|
||||
Collection<HologramData> hologramData = this.plugin.getStorage().loadAll(world.getName());
|
||||
Collection<HologramData> hologramData = this.plugin.getStorage().loadAll("worlds/"+world.getName());
|
||||
for (HologramData data : hologramData) {
|
||||
Hologram hologram = this.plugin.getHologramFactory().apply(data);
|
||||
this.plugin.getRegistry().register(hologram);
|
||||
|
||||
@@ -18,7 +18,7 @@ public class WorldListener implements Listener {
|
||||
FancyHologramsPlugin.get().getHologramThread().submit(() -> {
|
||||
FancyHologramsPlugin.get().getFancyLogger().info("Loading holograms for world " + event.getWorld().getName());
|
||||
|
||||
Collection<HologramData> data = FancyHologramsPlugin.get().getStorage().loadAll(event.getWorld().getName());
|
||||
Collection<HologramData> data = FancyHologramsPlugin.get().getStorage().loadAll("worlds/"+event.getWorld().getName());
|
||||
for (HologramData d : data) {
|
||||
Hologram hologram = FancyHologramsPlugin.get().getHologramFactory().apply(d);
|
||||
FancyHologramsPlugin.get().getRegistry().register(hologram);
|
||||
|
||||
@@ -194,7 +194,7 @@ public final class FancyHologramsPlugin extends JavaPlugin implements FancyHolog
|
||||
new StorageMigrator().migrate();
|
||||
|
||||
for (World world : Bukkit.getWorlds()) {
|
||||
Collection<HologramData> data = storage.loadAll(world.getName());
|
||||
Collection<HologramData> data = storage.loadAll("worlds/"+world.getName());
|
||||
for (HologramData d : data) {
|
||||
Hologram hologram = hologramFactory.apply(d);
|
||||
registry.register(hologram);
|
||||
|
||||
@@ -51,20 +51,14 @@ public class JsonStorage implements HologramStorage {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Collection<HologramData> loadAll(String world) {
|
||||
public Collection<HologramData> loadAll(String subdir) {
|
||||
List<HologramData> holograms = new ArrayList<>();
|
||||
|
||||
try {
|
||||
List<JsonDataUnion> allTextUnions = jdb.getAll("worlds/" + world + "/text", JsonDataUnion.class);
|
||||
List<JsonDataUnion> allTextUnions = jdb.getAll(subdir, JsonDataUnion.class);
|
||||
allTextUnions.forEach(u -> holograms.add(JsonAdapter.fromJson(u)));
|
||||
|
||||
List<JsonDataUnion> allItemUnions = jdb.getAll("worlds/" + world + "/item", JsonDataUnion.class);
|
||||
allItemUnions.forEach(u -> holograms.add(JsonAdapter.fromJson(u)));
|
||||
|
||||
List<JsonDataUnion> allBlockUnions = jdb.getAll("worlds/" + world + "/block", JsonDataUnion.class);
|
||||
allBlockUnions.forEach(u -> holograms.add(JsonAdapter.fromJson(u)));
|
||||
} catch (IOException e) {
|
||||
FancyHolograms.get().getFancyLogger().error("Failed to load all holograms from world " + world);
|
||||
FancyHolograms.get().getFancyLogger().error("Failed to load all holograms from " + subdir);
|
||||
FancyHolograms.get().getFancyLogger().error(e);
|
||||
}
|
||||
|
||||
@@ -72,6 +66,6 @@ public class JsonStorage implements HologramStorage {
|
||||
}
|
||||
|
||||
public String getKey(HologramData data) {
|
||||
return "worlds/" + data.getLocation().getWorld().getName() + "/" + data.getType().toString().toLowerCase() + "/" + data.getName();
|
||||
return "worlds/" + data.getLocation().getWorld().getName() + "/" + data.getName();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user