mirror of
https://github.com/FancyInnovations/FancyPlugins.git
synced 2025-12-06 07:43:36 +00:00
fancyholograms: Optimize hologram updates by submitting tasks to the hologram thread on player events
This commit is contained in:
@@ -44,24 +44,30 @@ public final class PlayerListener implements Listener {
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR)
|
||||
public void onJoin(@NotNull final PlayerJoinEvent event) {
|
||||
FancyHolograms.get().getHologramThread().submit(() -> {
|
||||
for (final var hologram : this.plugin.getHologramsManager().getHolograms()) {
|
||||
hologram.forceHideHologram(event.getPlayer());
|
||||
hologram.forceUpdateShownStateFor(event.getPlayer());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR)
|
||||
public void onTeleport(@NotNull final PlayerTeleportEvent event) {
|
||||
FancyHolograms.get().getHologramThread().submit(() -> {
|
||||
for (final Hologram hologram : this.plugin.getHologramsManager().getHolograms()) {
|
||||
hologram.forceUpdateShownStateFor(event.getPlayer());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR)
|
||||
public void onWorldChange(@NotNull final PlayerChangedWorldEvent event) {
|
||||
FancyHolograms.get().getHologramThread().submit(() -> {
|
||||
for (final Hologram hologram : this.plugin.getHologramsManager().getHolograms()) {
|
||||
hologram.forceUpdateShownStateFor(event.getPlayer());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR)
|
||||
@@ -83,9 +89,11 @@ public final class PlayerListener implements Listener {
|
||||
// Removing player from the map, as they're no longer needed here.
|
||||
loadingResourcePacks.remove(playerUniqueId);
|
||||
// Refreshing holograms as to make sure custom textures are loaded.
|
||||
FancyHolograms.get().getHologramThread().submit(() -> {
|
||||
for (final Hologram hologram : this.plugin.getHologramsManager().getHolograms()) {
|
||||
hologram.refreshHologram(event.getPlayer());
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,10 +35,12 @@ public final class PlayerListener implements Listener {
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR)
|
||||
public void onJoin(@NotNull final PlayerJoinEvent event) {
|
||||
FancyHologramsPlugin.get().getHologramThread().submit(() -> {
|
||||
for (final var hologram : this.plugin.getRegistry().getAll()) {
|
||||
hologram.removeViewer(event.getPlayer().getUniqueId());
|
||||
FancyHologramsPlugin.get().getController().refreshHologram(hologram, event.getPlayer());
|
||||
}
|
||||
});
|
||||
|
||||
if (!this.plugin.getHologramConfiguration().areVersionNotificationsMuted() && event.getPlayer().hasPermission("fancyholograms.admin")) {
|
||||
FancyHologramsPlugin.get().getHologramThread().submit(() -> FancyHologramsPlugin.get().getVersionConfig().checkVersionAndDisplay(event.getPlayer(), true));
|
||||
@@ -57,17 +59,21 @@ public final class PlayerListener implements Listener {
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR)
|
||||
public void onTeleport(@NotNull final PlayerTeleportEvent event) {
|
||||
FancyHologramsPlugin.get().getHologramThread().submit(() -> {
|
||||
for (final Hologram hologram : this.plugin.getRegistry().getAll()) {
|
||||
FancyHologramsPlugin.get().getController().refreshHologram(hologram, event.getPlayer());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR)
|
||||
public void onWorldChange(@NotNull final PlayerChangedWorldEvent event) {
|
||||
FancyHologramsPlugin.get().getHologramThread().submit(() -> {
|
||||
for (final Hologram hologram : this.plugin.getRegistry().getAll()) {
|
||||
hologram.removeViewer(event.getPlayer().getUniqueId());
|
||||
FancyHologramsPlugin.get().getController().refreshHologram(hologram, event.getPlayer());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR)
|
||||
@@ -89,9 +95,11 @@ public final class PlayerListener implements Listener {
|
||||
// Removing player from the map, as they're no longer needed here.
|
||||
loadingResourcePacks.remove(playerUniqueId);
|
||||
// Refreshing holograms as to make sure custom textures are loaded.
|
||||
FancyHologramsPlugin.get().getHologramThread().submit(() -> {
|
||||
for (final Hologram hologram : this.plugin.getRegistry().getAll()) {
|
||||
FancyHologramsPlugin.get().getController().refreshHologram(hologram, event.getPlayer());
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1 +1 @@
|
||||
2.7.0.288
|
||||
2.7.0.289
|
||||
Reference in New Issue
Block a user