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