BuilderActionFlockSetTarget class

Пакет: com.hypixel.hytale.server.flock.corecomponents.builders

Файл: com/hypixel/hytale/server/flock/corecomponents/builders/BuilderActionFlockSetTarget.java

extends: BuilderActionBase

Поля (1)

МодификаторыТипИмя
protected boolean clear

Методы (3)

МодификаторыВозвратСигнатура
abstract return new ActionFlockSetTargetreturn new ActionFlockSetTarget(this, var1)
public String getTargetSlotString getTargetSlot(@Nonnull BuilderSupport var1)
public boolean isClearboolean isClear()

Исходный код

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

class="kw">import com.google.gson.JsonElement;
class="kw">import com.hypixel.hytale.server.flock.corecomponents.ActionFlockSetTarget;
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.Feature;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.InstructionType;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.holder.StringHolder;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.validators.StringNotEmptyValidator;
class="kw">import com.hypixel.hytale.server.npc.corecomponents.builders.BuilderActionBase;
class="kw">import javax.annotation.Nonnull;

class="kw">public class BuilderActionFlockSetTarget class="kw">extends BuilderActionBase {
   class="kw">protected boolean clear;
   class="kw">protected class="kw">final StringHolder targetSlot = new StringHolder();

   class="kw">public BuilderActionFlockSetTarget() {
   }

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

   @Nonnull
   class="kw">public BuilderActionFlockSetTarget readConfig(@Nonnull JsonElement var1) {
      this.getBoolean(
         var1,
         "Clear",
         var1x -> this.clear = var1x,
         false,
         BuilderDescriptorState.Stable,
         "Clear locked target if true else set.",
         "If true, clear locked target. If false, set to current target."
      );
      this.getString(
         var1, "TargetSlot", this.targetSlot, "LockedTarget", StringNotEmptyValidator.get(), BuilderDescriptorState.Stable, "The target slot to use", null
      );
      this.requireFeature(Feature.LiveEntity);
      this.requireInstructionType(InstructionType.NPCOnlyInstructions);
      class="kw">return this;
   }

   @Nonnull
   @Override
   class="kw">public String getShortDescription() {
      class="kw">return "Set or clear locked target for flock.";
   }

   @Nonnull
   @Override
   class="kw">public String getLongDescription() {
      class="kw">return "Sets or clears the locked target for the flock the NPC is member of. If Clear flag is true, the locked target is cleared otherwise it is set to the the target.The flock leader is explicitly excluded from this operation.";
   }

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

   class="kw">public boolean isClear() {
      class="kw">return this.clear;
   }

   class="kw">public String getTargetSlot(@Nonnull BuilderSupport var1) {
      class="kw">return this.targetSlot.get(var1.getExecutionContext());
   }
}