BuilderActionSetTargetNPCInvulnerable class

Пакет: com.hypixel.hytale.builtin.encountermanager.npc.builders

Файл: com/hypixel/hytale/builtin/encountermanager/npc/builders/BuilderActionSetTargetNPCInvulnerable.java

extends: BuilderActionBase

Методы (2)

МодификаторыВозвратСигнатура
abstract return new ActionSetTargetNPCInvulnerablereturn new ActionSetTargetNPCInvulnerable(this, var1)
public boolean isInvulnerableboolean isInvulnerable(@Nonnull BuilderSupport var1)

Исходный код

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

class="kw">import com.google.gson.JsonElement;
class="kw">import com.hypixel.hytale.builtin.encountermanager.npc.ActionSetTargetNPCInvulnerable;
class="kw">import com.hypixel.hytale.server.npc.asset.builder.Builder;
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.BooleanHolder;
class="kw">import com.hypixel.hytale.server.npc.corecomponents.builders.BuilderActionBase;
class="kw">import com.hypixel.hytale.server.npc.instructions.Action;
class="kw">import java.util.EnumSet;
class="kw">import javax.annotation.Nonnull;

class="kw">public class BuilderActionSetTargetNPCInvulnerable class="kw">extends BuilderActionBase {
   @Nonnull
   class="kw">protected class="kw">final BooleanHolder invulnerable = new BooleanHolder();

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

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

   @Nonnull
   @Override
   class="kw">public String getShortDescription() {
      class="kw">return "Enable/disable damage invulnerability on the target NPC";
   }

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

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

   @Nonnull
   @Override
   class="kw">public Builder<Action> readConfig(@Nonnull JsonElement var1) {
      this.requireBoolean(
         var1, "Invulnerable", this.invulnerable, BuilderDescriptorState.Stable, "Whether the target NPC should become invulnerable to damage", null
      );
      this.requireFeature(Feature.LiveEntity);
      this.requireInstructionType(EnumSet.of(InstructionType.Encounter));
      class="kw">return this;
   }

   class="kw">public boolean isInvulnerable(@Nonnull BuilderSupport var1) {
      class="kw">return this.invulnerable.get(var1.getExecutionContext());
   }
}