OtherPlayersMarkerProvider class

Пакет: com.hypixel.hytale.server.core.universe.world.worldmap.markers.providers

Файл: com/hypixel/hytale/server/core/universe/world/worldmap/markers/providers/OtherPlayersMarkerProvider.java

implements: WorldMapManager.MarkerProvider

Поля (13)

МодификаторыТипИмя
final OtherPlayersMarkerProvider INSTANCE
Transform var12
Vector3d var13
PlayerMarkerComponent var14
HeightDeltaIconComponent var15
String var16
MapMarker var17
WorldMapConfig var4
PlayersMapMarkerConfig var5
Predicate var6
HiddenPlayersManager var7
ComponentType var8
boolean var9

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.universe.world.worldmap.markers.providers;

class="kw">import com.hypixel.hytale.component.ComponentType;
class="kw">import com.hypixel.hytale.math.vector.Transform;
class="kw">import com.hypixel.hytale.protocol.packets.worldmap.HeightDeltaIconComponent;
class="kw">import com.hypixel.hytale.protocol.packets.worldmap.MapMarker;
class="kw">import com.hypixel.hytale.protocol.packets.worldmap.PlayerMarkerComponent;
class="kw">import com.hypixel.hytale.server.core.asset.type.gameplay.WorldMapConfig;
class="kw">import com.hypixel.hytale.server.core.asset.type.gameplay.worldmap.PlayersMapMarkerConfig;
class="kw">import com.hypixel.hytale.server.core.entity.entities.Player;
class="kw">import com.hypixel.hytale.server.core.entity.entities.player.HiddenPlayersManager;
class="kw">import com.hypixel.hytale.server.core.modules.entity.component.Spectating;
class="kw">import com.hypixel.hytale.server.core.universe.PlayerRef;
class="kw">import com.hypixel.hytale.server.core.universe.world.World;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import com.hypixel.hytale.server.core.universe.world.worldmap.WorldMapManager;
class="kw">import com.hypixel.hytale.server.core.universe.world.worldmap.markers.MapMarkerBuilder;
class="kw">import com.hypixel.hytale.server.core.universe.world.worldmap.markers.MarkersCollector;
class="kw">import java.util.function.Predicate;
class="kw">import javax.annotation.Nonnull;
class="kw">import org.joml.Vector3d;

class="kw">public class OtherPlayersMarkerProvider class="kw">implements WorldMapManager.MarkerProvider {
   class="kw">public class="kw">static class="kw">final OtherPlayersMarkerProvider INSTANCE = new OtherPlayersMarkerProvider();

   class="kw">private OtherPlayersMarkerProvider() {
   }

   @Override
   class="kw">public void update(@Nonnull World var1, @Nonnull Player var2, @Nonnull MarkersCollector var3) {
      WorldMapConfig var4 = var1.getGameplayConfig().getWorldMapConfig();
      if (var4.isDisplayPlayers()) {
         PlayersMapMarkerConfig var5 = var4.getPlayersConfig();
         Predicate var6 = var3.getPlayerMapFilter();
         HiddenPlayersManager var7 = var2.getPlayerRef().getHiddenPlayersManager();
         ComponentType var8 = Spectating.getComponentType();
         boolean var9 = var2.getPlayerRef().getComponentConcurrent(var8) != null;

         for (PlayerRef var11 : var1.getPlayerRefs()) {
            if (!var11.getUuid().equals(var2.getUuid()) && (var9 || var11.getComponentConcurrent(var8) == null) && !var7.isPlayerHidden(var11.getUuid())) {
               Transform var12 = var11.getTransform();
               Vector3d var13 = var12.getPosition();
               if (var6 == null || !var6.test(var11)) {
                  PlayerMarkerComponent var14 = new PlayerMarkerComponent(var11.getUuid());
                  HeightDeltaIconComponent var15 = new HeightDeltaIconComponent(
                     var5.getIconSwapHeightDelta(), var5.getAboveIcon(), var5.getIconSwapHeightDelta(), var5.getBelowIcon()
                  );
                  String var16 = "Player-" + var11.getUuid();
                  MapMarker var17 = new MapMarkerBuilder(var16, "Player.png", var12)
                     .withCustomName(var11.getUsername())
                     .withComponent(var14)
                     .withComponent(var15)
                     .build();
                  var3.addIgnoreViewDistance(var17);
               }
            }
         }
      }
   }
}