SensorHasTask class
Пакет: com.hypixel.hytale.builtin.adventure.npcobjectives.npc
Файл: com/hypixel/hytale/builtin/adventure/npcobjectives/npc/SensorHasTask.java
extends: SensorBase
Поля (9)
| Модификаторы | Тип | Имя |
|---|---|---|
|
UUIDComponent |
var10 |
|
UUID |
var11 |
|
PlayerTaskSupport |
var12 |
|
boolean |
var13 |
|
|
var13 |
|
Ref |
var6 |
|
Archetype |
var7 |
|
UUIDComponent |
var8 |
|
UUID |
var9 |
Методы (5)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
|
|
for for(String var17 : this.tasksById) |
|
|
if if(this.tasksById != null && this.tasksById.length != 0) |
|
|
if if(var8 == null) |
|
|
if if(var10 == null) |
abstract |
|
super super(var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.builtin.adventure.npcobjectives.npc;
class="kw">import com.hypixel.hytale.builtin.adventure.npcobjectives.NPCObjectivesPlugin;
class="kw">import com.hypixel.hytale.builtin.adventure.npcobjectives.npc.builders.BuilderSensorHasTask;
class="kw">import com.hypixel.hytale.component.Archetype;
class="kw">import com.hypixel.hytale.component.Ref;
class="kw">import com.hypixel.hytale.component.Store;
class="kw">import com.hypixel.hytale.server.core.entity.UUIDComponent;
class="kw">import com.hypixel.hytale.server.core.modules.entity.damage.DeathComponent;
class="kw">import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.BuilderSupport;
class="kw">import com.hypixel.hytale.server.npc.corecomponents.SensorBase;
class="kw">import com.hypixel.hytale.server.npc.instructions.ExecutionSupport;
class="kw">import com.hypixel.hytale.server.npc.role.support.PlayerTaskSupport;
class="kw">import com.hypixel.hytale.server.npc.sensorinfo.InfoProvider;
class="kw">import java.util.UUID;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class SensorHasTask class="kw">extends SensorBase {
@Nullable
class="kw">protected class="kw">final String[] tasksById;
class="kw">public SensorHasTask(@Nonnull BuilderSensorHasTask var1, @Nonnull BuilderSupport var2) {
super(var1);
this.tasksById = var1.getTasksById(var2);
}
@Override
class="kw">public boolean matches(@Nonnull Ref<EntityStore> var1, @Nonnull ExecutionSupport var2, double var3, @Nonnull Store<EntityStore> var5) {
if (!super.matches(var1, var2, var3, var5)) {
class="kw">return false;
}
if (this.tasksById != null && this.tasksById.length != 0) {
Ref var6 = var2.getStateSupport().getInteractionIterationTarget();
if (var6 != null && var6.isValid()) {
Archetype var7 = var5.getArchetype(var6);
if (var7.contains(DeathComponent.getComponentType())) {
class="kw">return false;
}
UUIDComponent var8 = var5.getComponent(var6, UUIDComponent.getComponentType());
if (var8 == null) {
class="kw">return false;
}
UUID var9 = var8.getUuid();
UUIDComponent var10 = var5.getComponent(var1, UUIDComponent.getComponentType());
if (var10 == null) {
class="kw">return false;
}
UUID var11 = var10.getUuid();
PlayerTaskSupport var12 = var2.getPlayerTaskSupport();
boolean var13 = false;
for (String var17 : this.tasksById) {
if (NPCObjectivesPlugin.hasTask(var9, var11, var17)) {
var13 = true;
var12.addTargetPlayerActiveTask(var17);
}
}
class="kw">return var13;
} else {
class="kw">return false;
}
} else {
class="kw">return false;
}
}
@Override
class="kw">public InfoProvider getSensorInfo() {
class="kw">return null;
}
}