diff --git a/plugins/fancyholograms/fh-api/src/main/java/de/oliver/fancyholograms/api/trait/HologramTrait.java b/plugins/fancyholograms/fh-api/src/main/java/de/oliver/fancyholograms/api/trait/HologramTrait.java index 662af4ff..7f4d717d 100644 --- a/plugins/fancyholograms/fh-api/src/main/java/de/oliver/fancyholograms/api/trait/HologramTrait.java +++ b/plugins/fancyholograms/fh-api/src/main/java/de/oliver/fancyholograms/api/trait/HologramTrait.java @@ -60,6 +60,12 @@ public abstract class HologramTrait { public void onDespawn(Player player) { } + /** + * Called when the trait is updated to a player. + */ + public void onUpdate(Player player) { + } + /** * Called when the hologram is modified. */ diff --git a/plugins/fancyholograms/fh-api/src/main/java/de/oliver/fancyholograms/api/trait/HologramTraitTrait.java b/plugins/fancyholograms/fh-api/src/main/java/de/oliver/fancyholograms/api/trait/HologramTraitTrait.java index 363221d0..166b6c80 100644 --- a/plugins/fancyholograms/fh-api/src/main/java/de/oliver/fancyholograms/api/trait/HologramTraitTrait.java +++ b/plugins/fancyholograms/fh-api/src/main/java/de/oliver/fancyholograms/api/trait/HologramTraitTrait.java @@ -110,6 +110,13 @@ public class HologramTraitTrait extends HologramTrait { } } + @Override + public void onUpdate(Player player) { + for (HologramTrait trait : this.traits) { + trait.onUpdate(player); + } + } + @Override public void onModify() { for (HologramTrait trait : this.traits) { diff --git a/plugins/fancyholograms/src/main/java/de/oliver/fancyholograms/controller/HologramControllerImpl.java b/plugins/fancyholograms/src/main/java/de/oliver/fancyholograms/controller/HologramControllerImpl.java index 73cd5bb8..a0cf2da4 100644 --- a/plugins/fancyholograms/src/main/java/de/oliver/fancyholograms/controller/HologramControllerImpl.java +++ b/plugins/fancyholograms/src/main/java/de/oliver/fancyholograms/controller/HologramControllerImpl.java @@ -31,6 +31,7 @@ public class HologramControllerImpl implements HologramController { } hologram.spawnTo(player); + hologram.getTraitTrait().onSpawn(player); } } @@ -45,6 +46,7 @@ public class HologramControllerImpl implements HologramController { } hologram.despawnFrom(player); + hologram.getTraitTrait().onDespawn(player); } } @@ -60,6 +62,7 @@ public class HologramControllerImpl implements HologramController { } hologram.updateFor(player); + hologram.getTraitTrait().onUpdate(player); } }