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);
}
}
}
}
}
}