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();
|
this.plugin.getRegistry().clear();
|
||||||
for (World world : Bukkit.getWorlds()) {
|
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) {
|
for (HologramData data : hologramData) {
|
||||||
Hologram hologram = this.plugin.getHologramFactory().apply(data);
|
Hologram hologram = this.plugin.getHologramFactory().apply(data);
|
||||||
this.plugin.getRegistry().register(hologram);
|
this.plugin.getRegistry().register(hologram);
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ public class WorldListener implements Listener {
|
|||||||
FancyHologramsPlugin.get().getHologramThread().submit(() -> {
|
FancyHologramsPlugin.get().getHologramThread().submit(() -> {
|
||||||
FancyHologramsPlugin.get().getFancyLogger().info("Loading holograms for world " + event.getWorld().getName());
|
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) {
|
for (HologramData d : data) {
|
||||||
Hologram hologram = FancyHologramsPlugin.get().getHologramFactory().apply(d);
|
Hologram hologram = FancyHologramsPlugin.get().getHologramFactory().apply(d);
|
||||||
FancyHologramsPlugin.get().getRegistry().register(hologram);
|
FancyHologramsPlugin.get().getRegistry().register(hologram);
|
||||||
|
|||||||
@@ -194,7 +194,7 @@ public final class FancyHologramsPlugin extends JavaPlugin implements FancyHolog
|
|||||||
new StorageMigrator().migrate();
|
new StorageMigrator().migrate();
|
||||||
|
|
||||||
for (World world : Bukkit.getWorlds()) {
|
for (World world : Bukkit.getWorlds()) {
|
||||||
Collection<HologramData> data = storage.loadAll(world.getName());
|
Collection<HologramData> data = storage.loadAll("worlds/"+world.getName());
|
||||||
for (HologramData d : data) {
|
for (HologramData d : data) {
|
||||||
Hologram hologram = hologramFactory.apply(d);
|
Hologram hologram = hologramFactory.apply(d);
|
||||||
registry.register(hologram);
|
registry.register(hologram);
|
||||||
|
|||||||
@@ -51,20 +51,14 @@ public class JsonStorage implements HologramStorage {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Collection<HologramData> loadAll(String world) {
|
public Collection<HologramData> loadAll(String subdir) {
|
||||||
List<HologramData> holograms = new ArrayList<>();
|
List<HologramData> holograms = new ArrayList<>();
|
||||||
|
|
||||||
try {
|
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)));
|
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) {
|
} 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);
|
FancyHolograms.get().getFancyLogger().error(e);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -72,6 +66,6 @@ public class JsonStorage implements HologramStorage {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String getKey(HologramData data) {
|
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