EntityFilterMany class

Пакет: com.hypixel.hytale.server.npc.corecomponents.entity.filters

Файл: com/hypixel/hytale/server/npc/corecomponents/entity/filters/EntityFilterMany.java

extends: EntityFilterBase

implements: IAnnotatedComponentCollection

Поля (1)

МодификаторыТипИмя
double var6

Методы (14)

МодификаторыВозвратСигнатура
abstract throw new IllegalArgumentExceptionthrow new IllegalArgumentException("Filter list can't be null")
abstract throw new IllegalArgumentExceptionthrow new IllegalArgumentException("Filter cannot be null in filter list")
for for(IEntityFilter var5 : this.filters)
for for(int var7 = 0; var7 < this.filters.length; var7++)
for for(IEntityFilter var5 : this.filters)
for for(IEntityFilter var8 : this.filters)
for for(IEntityFilter var5 : this.filters)
for for(IEntityFilter var5 : this.filters)
for for(IEntityFilter var5 : this.filters)
for for(IEntityFilter var5 : this.filters)
for for(IEntityFilter var7 : this.filters)
for for(int var3 = 0; var3 < this.filters.length; var3++)
if if(var1 == null)
if if(var5 == null)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.server.npc.corecomponents.entity.filters;

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.corecomponents.EntityFilterBase;
class="kw">import com.hypixel.hytale.server.npc.corecomponents.IEntityFilter;
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.movement.controllers.MotionController;
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 EntityFilterMany class="kw">extends EntityFilterBase class="kw">implements IAnnotatedComponentCollection {
   @Nonnull
   class="kw">protected class="kw">final IEntityFilter[] filters;
   class="kw">protected class="kw">final int cost;

   class="kw">public EntityFilterMany(@Nonnull List<IEntityFilter> var1) {
      if (var1 == null) {
         throw new IllegalArgumentException("Filter list can't be null");
      }

      this.filters = var1.toArray(IEntityFilter[]::new);

      for (IEntityFilter var5 : this.filters) {
         if (var5 == null) {
            throw new IllegalArgumentException("Filter cannot be null in filter list");
         }
      }

      IEntityFilter.prioritiseFilters(this.filters);
      double var6 = 0.0;

      for (int var7 = 0; var7 < this.filters.length; var7++) {
         var6 += this.filters[var7].cost() * (1.0 / Math.pow(2.0, var7));
      }

      this.cost = (int)var6;
   }

   @Override
   class="kw">public int cost() {
      class="kw">return this.cost;
   }

   @Override
   class="kw">public void registerWithSupport(ExecutionSupport var1) {
      for (IEntityFilter var5 : this.filters) {
         var5.registerWithSupport(var1);
      }
   }

   @Override
   class="kw">public void motionControllerChanged(
      @Nullable Ref<EntityStore> var1, @Nonnull NPCEntity var2, MotionController var3, @Nullable ComponentAccessor<EntityStore> var4
   ) {
      for (IEntityFilter var8 : this.filters) {
         var8.motionControllerChanged(var1, var2, var3, var4);
      }
   }

   @Override
   class="kw">public void loaded(ExecutionSupport var1) {
      for (IEntityFilter var5 : this.filters) {
         var5.loaded(var1);
      }
   }

   @Override
   class="kw">public void spawned(ExecutionSupport var1) {
      for (IEntityFilter var5 : this.filters) {
         var5.spawned(var1);
      }
   }

   @Override
   class="kw">public void unloaded(ExecutionSupport var1) {
      for (IEntityFilter var5 : this.filters) {
         var5.unloaded(var1);
      }
   }

   @Override
   class="kw">public void removed(ExecutionSupport var1) {
      for (IEntityFilter var5 : this.filters) {
         var5.removed(var1);
      }
   }

   @Override
   class="kw">public void teleported(ExecutionSupport var1, World var2, World var3) {
      for (IEntityFilter var7 : this.filters) {
         var7.teleported(var1, var2, var3);
      }
   }

   @Override
   class="kw">public int componentCount() {
      class="kw">return this.filters.length;
   }

   @Override
   class="kw">public IAnnotatedComponent getComponent(int var1) {
      class="kw">return this.filters[var1];
   }

   @Override
   class="kw">public void setContext(IAnnotatedComponent var1, int var2) {
      super.setContext(var1, var2);

      for (int var3 = 0; var3 < this.filters.length; var3++) {
         this.filters[var3].setContext(this, var3);
      }
   }
}