EntityDetectionUtil class
Пакет: com.hypixel.hytale.server.npc.util
Файл: com/hypixel/hytale/server/npc/util/EntityDetectionUtil.java
Поля (2)
| Модификаторы | Тип | Имя |
|---|---|---|
|
Player |
var2 |
|
PlayerSettings |
var3 |
Методы (3)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
static |
boolean |
isDetectableByNPCsboolean isDetectableByNPCs(@Nonnull Ref<EntityStore> var0, @Nonnull ComponentAccessor<EntityStore> var1) |
static |
boolean |
isDetectableByNPCsboolean isDetectableByNPCs(@Nonnull Ref<EntityStore> var0, @Nonnull ComponentAccessor<EntityStore> var1, @Nonnull Player var2) |
static |
boolean |
isDetectablePlayerboolean isDetectablePlayer(@Nonnull Ref<EntityStore> var0, @Nonnull ComponentAccessor<EntityStore> var1, @Nonnull Player var2) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.npc.util;
class="kw">import com.hypixel.hytale.component.ComponentAccessor;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.protocol.GameMode;
class="kw">import com.hypixel.hytale.server.core.entity.entities.Player;
class="kw">import com.hypixel.hytale.server.core.modules.entity.component.Intangible;
class="kw">import com.hypixel.hytale.server.core.modules.entity.component.Spectating;
class="kw">import com.hypixel.hytale.server.core.modules.entity.player.PlayerSettings;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import javax.annotation.Nonnull;
class="kw">public class="kw">final class EntityDetectionUtil {
class="kw">private EntityDetectionUtil() {
}
class="kw">public class="kw">static boolean isDetectableByNPCs(@Nonnull Ref<EntityStore> var0, @Nonnull ComponentAccessor<EntityStore> var1) {
if (var1.getArchetype(var0).contains(Intangible.getComponentType())) {
class="kw">return false;
}
Player var2 = var1.getComponent(var0, Player.getComponentType());
class="kw">return var2 == null ? true : isDetectablePlayer(var0, var1, var2);
}
class="kw">public class="kw">static boolean isDetectableByNPCs(@Nonnull Ref<EntityStore> var0, @Nonnull ComponentAccessor<EntityStore> var1, @Nonnull Player var2) {
class="kw">return var1.getArchetype(var0).contains(Intangible.getComponentType()) ? false : isDetectablePlayer(var0, var1, var2);
}
class="kw">private class="kw">static boolean isDetectablePlayer(@Nonnull Ref<EntityStore> var0, @Nonnull ComponentAccessor<EntityStore> var1, @Nonnull Player var2) {
if (var1.getArchetype(var0).contains(Spectating.getComponentType())) {
class="kw">return false;
}
if (var2.getGameMode() != GameMode.Creative) {
class="kw">return true;
}
PlayerSettings var3 = var1.getComponent(var0, PlayerSettings.getComponentType());
class="kw">return var3 != null && var3.creativeSettings().allowNPCDetection();
}
}