diff --git a/src/main/java/com/songoda/skyblock/command/commands/admin/RemoveHologramCommand.java b/src/main/java/com/songoda/skyblock/command/commands/admin/RemoveHologramCommand.java index ee6dfd39..d72ef499 100644 --- a/src/main/java/com/songoda/skyblock/command/commands/admin/RemoveHologramCommand.java +++ b/src/main/java/com/songoda/skyblock/command/commands/admin/RemoveHologramCommand.java @@ -77,7 +77,7 @@ public class RemoveHologramCommand extends SubCommand { Hologram hologram = hologramManager.getHologram(hologramType1); if (hologram != null) - hologram.remove(); + hologramManager.removeHologram(hologram); }); messageManager.sendMessage(sender, configLoad.getString("Command.Island.Admin.RemoveHologram.Removed.Message").replace("%type", hologramType.name())); diff --git a/src/main/java/com/songoda/skyblock/command/commands/admin/SetHologramCommand.java b/src/main/java/com/songoda/skyblock/command/commands/admin/SetHologramCommand.java index 25739d7a..1f3c947f 100644 --- a/src/main/java/com/songoda/skyblock/command/commands/admin/SetHologramCommand.java +++ b/src/main/java/com/songoda/skyblock/command/commands/admin/SetHologramCommand.java @@ -49,15 +49,16 @@ public class SetHologramCommand extends SubCommand { fileManager.getConfig(new File(skyblock.getDataFolder(), "locations.yml")), "Location.Hologram.Leaderboard." + hologramType.name(), player.getLocation(), true); - HologramType hologramType1 = HologramType - .valueOf(WordUtils.capitalize(args[0].toLowerCase())); - Hologram hologram = hologramManager.getHologram(hologramType1); - if (hologram != null) - hologram.remove(); + Bukkit.getServer().getScheduler().runTask(skyblock, () -> { + HologramType hologramType1 = HologramType.valueOf(WordUtils.capitalize(args[0].toLowerCase())); + Hologram hologram = hologramManager.getHologram(hologramType1); - Bukkit.getServer().getScheduler().runTaskAsynchronously(skyblock, () -> - hologramManager.spawnHologram(hologramType1)); + if (hologram != null) + hologramManager.removeHologram(hologram); + + hologramManager.spawnHologram(hologramType1); + }); messageManager.sendMessage(player, configLoad.getString("Command.Island.Admin.SetHologram.Set.Message").replace("%type", diff --git a/src/main/java/com/songoda/skyblock/tasks/HologramTask.java b/src/main/java/com/songoda/skyblock/tasks/HologramTask.java index 7d568d2c..3dcfe777 100644 --- a/src/main/java/com/songoda/skyblock/tasks/HologramTask.java +++ b/src/main/java/com/songoda/skyblock/tasks/HologramTask.java @@ -172,4 +172,9 @@ public class HologramTask extends BukkitRunnable { hologramList.update(getHologramLines(hologramList.getType())); } } + + public void removeHologram(Hologram hologram) { + hologramStorage.remove(hologram); + hologram.remove(); + } }