@@ -252,23 +252,28 @@ public enum LaunchPads {
252252 public static void register (Scheduler scheduler ) {
253253 launchPads .addAll (Arrays .asList (LaunchPads .values ()));
254254 launchPads .removeIf (launchPad -> launchPad .serverType != HypixelConst .getTypeLoader ().getType ());
255- Map <UUID , PlayerHolograms .ExternalPlayerHologram > hologramMap = new HashMap <>();
255+ Map <UUID , List < PlayerHolograms .ExternalPlayerHologram > > hologramMap = new HashMap <>();
256256
257257 scheduler .scheduleTask (() -> {
258- for (LaunchPads launchPad : launchPads ) {
259- List <UUID > updated = new ArrayList <>();
260- SkyBlockGenericLoader .getLoadedPlayers ().forEach (player -> {
261- if (hologramMap .containsKey (player .getUuid ()))
262- PlayerHolograms .removeExternalPlayerHologram (hologramMap .get (player .getUuid ()));
258+ List <UUID > updated = new ArrayList <>();
263259
264- PlayerHolograms . ExternalPlayerHologram hologram = launchPad . hologramDisplay . apply (player );
265- hologramMap .put (player .getUuid (), hologram );
266- PlayerHolograms . addExternalPlayerHologram ( hologram );
267- updated . add (player .getUuid ());
268- });
260+ SkyBlockGenericLoader . getLoadedPlayers (). forEach (player -> {
261+ if ( hologramMap .containsKey (player .getUuid ())) {
262+ hologramMap . get ( player . getUuid ()). forEach ( PlayerHolograms :: removeExternalPlayerHologram );
263+ hologramMap . remove (player .getUuid ());
264+ }
269265
270- hologramMap .keySet ().removeIf (uuid -> !updated .contains (uuid ));
271- }
266+ List <PlayerHolograms .ExternalPlayerHologram > holograms = new ArrayList <>();
267+ for (LaunchPads launchPad : launchPads ) {
268+ PlayerHolograms .ExternalPlayerHologram hologram = launchPad .hologramDisplay .apply (player );
269+ holograms .add (hologram );
270+ PlayerHolograms .addExternalPlayerHologram (hologram );
271+ updated .add (player .getUuid ());
272+ }
273+ hologramMap .put (player .getUuid (), holograms );
274+ });
275+
276+ hologramMap .keySet ().removeIf (uuid -> !updated .contains (uuid ));
272277 }, TaskSchedule .seconds (2 ), TaskSchedule .seconds (2 ), ExecutionType .TICK_END );
273278
274279 scheduler .scheduleTask (() -> {
0 commit comments