BuilderSensorEntityPrioritiserAttitude class

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

Файл: com/hypixel/hytale/server/npc/corecomponents/entity/prioritisers/builders/BuilderSensorEntityPrioritiserAttitude.java

extends: BuilderSensorEntityPrioritiserBase

Поля (1)

МодификаторыТипИмя
final EnumArrayHolder<Attitude> prioritisedAttitudes

Методы (2)

МодификаторыВозвратСигнатура
abstract return new SensorEntityPrioritiserAttitudereturn new SensorEntityPrioritiserAttitude(this, var1)
public Attitude[] getPrioritisedAttitudesAttitude[] getPrioritisedAttitudes(@Nonnull BuilderSupport var1)

Исходный код

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

class="kw">import com.google.gson.JsonElement;
class="kw">import com.hypixel.hytale.server.core.asset.type.attitude.Attitude;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.BuilderDescriptorState;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.BuilderSupport;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.InstructionType;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.holder.EnumArrayHolder;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.validators.EnumArrayNoDuplicatesValidator;
class="kw">import com.hypixel.hytale.server.npc.corecomponents.builders.BuilderSensorEntityPrioritiserBase;
class="kw">import com.hypixel.hytale.server.npc.corecomponents.entity.prioritisers.SensorEntityPrioritiserAttitude;
class="kw">import java.util.Set;
class="kw">import javax.annotation.Nonnull;

class="kw">public class BuilderSensorEntityPrioritiserAttitude class="kw">extends BuilderSensorEntityPrioritiserBase {
   class="kw">protected class="kw">final EnumArrayHolder<Attitude> prioritisedAttitudes = new EnumArrayHolder<>();

   class="kw">public BuilderSensorEntityPrioritiserAttitude() {
      super(Set.of("Attitude"));
   }

   @Nonnull
   @Override
   class="kw">public String getShortDescription() {
      class="kw">return "Prioritises class="kw">return entities by attitude";
   }

   @Nonnull
   @Override
   class="kw">public String getLongDescription() {
      class="kw">return this.getShortDescription();
   }

   @Nonnull
   class="kw">public SensorEntityPrioritiserAttitude build(@Nonnull BuilderSupport var1) {
      class="kw">return new SensorEntityPrioritiserAttitude(this, var1);
   }

   @Nonnull
   @Override
   class="kw">public BuilderDescriptorState getBuilderDescriptorState() {
      class="kw">return BuilderDescriptorState.Stable;
   }

   @Nonnull
   class="kw">public BuilderSensorEntityPrioritiserAttitude readConfig(@Nonnull JsonElement var1) {
      super.readConfig(var1);
      this.requireEnumArray(
         var1,
         "AttitudesByPriority",
         this.prioritisedAttitudes,
         Attitude.class,
         EnumArrayNoDuplicatesValidator.get(),
         BuilderDescriptorState.Stable,
         "A prioritised list of attitudes",
         null
      );
      this.requireInstructionType(InstructionType.NPCOnlyInstructions);
      class="kw">return this;
   }

   class="kw">public Attitude[] getPrioritisedAttitudes(@Nonnull BuilderSupport var1) {
      class="kw">return this.prioritisedAttitudes.get(var1.getExecutionContext());
   }
}