SensorMany class
Пакет: com.hypixel.hytale.server.npc.corecomponents.utility
Файл: com/hypixel/hytale/server/npc/corecomponents/utility/SensorMany.java
extends: SensorBase
implements: IAnnotatedComponentCollection
Методы (16)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract |
throw new |
IllegalArgumentExceptionthrow new IllegalArgumentException("Sensor list can't be null") |
abstract |
throw new |
IllegalArgumentExceptionthrow new IllegalArgumentException("Sensor in sensor list can't be null") |
abstract abstract |
WrappedInfoProvider |
createInfoProviderWrappedInfoProvider createInfoProvider() |
|
|
for for(Sensor var7 : this.sensors) |
|
|
for for(Sensor var4 : this.sensors) |
|
|
for for(Sensor var5 : this.sensors) |
|
|
for for(Sensor var8 : this.sensors) |
|
|
for for(Sensor var5 : this.sensors) |
|
|
for for(Sensor var5 : this.sensors) |
|
|
for for(Sensor var5 : this.sensors) |
|
|
for for(Sensor var5 : this.sensors) |
|
|
for for(Sensor var7 : this.sensors) |
|
|
for for(int var3 = 0; var3 < this.sensors.length; var3++) |
|
|
if if(var3 == null) |
|
|
if if(var7 == null) |
abstract |
|
super super(var1) |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.npc.corecomponents.utility;
class="kw">import com.hypixel.hytale.component.ComponentAccessor;
class="kw">import com.hypixel.hytale.component.Ref;
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.npc.asset.builder.BuilderSupport;
class="kw">import com.hypixel.hytale.server.npc.corecomponents.SensorBase;
class="kw">import com.hypixel.hytale.server.npc.corecomponents.utility.builders.BuilderSensorMany;
class="kw">import com.hypixel.hytale.server.npc.entities.NPCEntity;
class="kw">import com.hypixel.hytale.server.npc.instructions.ExecutionSupport;
class="kw">import com.hypixel.hytale.server.npc.instructions.Sensor;
class="kw">import com.hypixel.hytale.server.npc.movement.controllers.MotionController;
class="kw">import com.hypixel.hytale.server.npc.sensorinfo.InfoProvider;
class="kw">import com.hypixel.hytale.server.npc.sensorinfo.WrappedInfoProvider;
class="kw">import com.hypixel.hytale.server.npc.util.IAnnotatedComponent;
class="kw">import com.hypixel.hytale.server.npc.util.IAnnotatedComponentCollection;
class="kw">import java.util.List;
class="kw">import javax.annotation.Nonnull;
class="kw">import javax.annotation.Nullable;
class="kw">public class="kw">abstract class SensorMany class="kw">extends SensorBase class="kw">implements IAnnotatedComponentCollection {
@Nonnull
class="kw">protected class="kw">final Sensor[] sensors;
class="kw">protected class="kw">final int autoUnlockTargetSlot;
class="kw">protected class="kw">final WrappedInfoProvider infoProvider;
class="kw">public SensorMany(@Nonnull BuilderSensorMany var1, @Nonnull BuilderSupport var2, @Nonnull List<Sensor> var3) {
super(var1);
if (var3 == null) {
throw new IllegalArgumentException("Sensor list can't be null");
}
this.sensors = var3.toArray(Sensor[]::new);
for (Sensor var7 : this.sensors) {
if (var7 == null) {
throw new IllegalArgumentException("Sensor in sensor list can't be null");
}
}
this.autoUnlockTargetSlot = var1.getAutoUnlockedTargetSlot(var2);
this.infoProvider = this.createInfoProvider();
}
@Override
class="kw">public void done() {
for (Sensor var4 : this.sensors) {
var4.done();
}
}
@Override
class="kw">public void registerWithSupport(ExecutionSupport var1) {
for (Sensor var5 : this.sensors) {
var5.registerWithSupport(var1);
}
}
@Override
class="kw">public void motionControllerChanged(
@Nullable Ref<EntityStore> var1, @Nonnull NPCEntity var2, MotionController var3, @Nullable ComponentAccessor<EntityStore> var4
) {
for (Sensor var8 : this.sensors) {
var8.motionControllerChanged(var1, var2, var3, var4);
}
}
@Override
class="kw">public void loaded(ExecutionSupport var1) {
for (Sensor var5 : this.sensors) {
var5.loaded(var1);
}
}
@Override
class="kw">public void spawned(ExecutionSupport var1) {
for (Sensor var5 : this.sensors) {
var5.spawned(var1);
}
}
@Override
class="kw">public void unloaded(ExecutionSupport var1) {
for (Sensor var5 : this.sensors) {
var5.unloaded(var1);
}
}
@Override
class="kw">public void removed(ExecutionSupport var1) {
for (Sensor var5 : this.sensors) {
var5.removed(var1);
}
}
@Override
class="kw">public void teleported(ExecutionSupport var1, World var2, World var3) {
for (Sensor var7 : this.sensors) {
var7.teleported(var1, var2, var3);
}
}
@Override
class="kw">public InfoProvider getSensorInfo() {
class="kw">return this.infoProvider;
}
@Override
class="kw">public int componentCount() {
class="kw">return this.sensors.length;
}
@Override
class="kw">public IAnnotatedComponent getComponent(int var1) {
class="kw">return this.sensors[var1];
}
@Override
class="kw">public void setContext(IAnnotatedComponent var1, int var2) {
super.setContext(var1, var2);
for (int var3 = 0; var3 < this.sensors.length; var3++) {
this.sensors[var3].setContext(this, var3);
}
}
class="kw">protected class="kw">abstract WrappedInfoProvider createInfoProvider();
}