BuilderSensorInflictedDamage class

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

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

extends: BuilderSensorBase

Поля (1)

МодификаторыТипИмя
protected SensorInflictedDamage.Target target

Методы (3)

МодификаторыВозвратСигнатура
abstract return new SensorInflictedDamagereturn new SensorInflictedDamage(this)
public SensorInflictedDamage.Target getTargetSensorInflictedDamage.Target getTarget()
public boolean isFriendlyFireboolean isFriendlyFire()

Исходный код

Показать/скрыть
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.SensorInflictedDamage;
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.corecomponents.builders.BuilderSensorBase;
class="kw">import com.hypixel.hytale.server.npc.instructions.Sensor;
class="kw">import javax.annotation.Nonnull;

class="kw">public class BuilderSensorInflictedDamage class="kw">extends BuilderSensorBase {
   class="kw">protected SensorInflictedDamage.Target target;
   class="kw">protected boolean friendlyFire;

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

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

   @Nonnull
   @Override
   class="kw">public String getShortDescription() {
      class="kw">return "Test if an individual or the flock it belongs to inflicted combat damage";
   }

   @Nonnull
   @Override
   class="kw">public String getLongDescription() {
      class="kw">return "Return true if an individual or the flock it belongs to inflicted combat damage. Target position is entity which received most damage.";
   }

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

   @Nonnull
   @Override
   class="kw">public Builder<Sensor> readConfig(@Nonnull JsonElement var1) {
      this.getEnum(
         var1,
         "Target",
         var1x -> this.target = var1x,
         SensorInflictedDamage.Target.class,
         SensorInflictedDamage.Target.Self,
         BuilderDescriptorState.Stable,
         "Who to check has inflicted damage",
         null
      );
      this.getBoolean(var1, "FriendlyFire", var1x -> this.friendlyFire = var1x, false, BuilderDescriptorState.Stable, "Consider friendly fire too", null);
      this.provideFeature(Feature.LiveEntity);
      this.requireInstructionType(InstructionType.NPCOnlyInstructions);
      class="kw">return this;
   }

   class="kw">public boolean isFriendlyFire() {
      class="kw">return this.friendlyFire;
   }

   class="kw">public SensorInflictedDamage.Target getTarget() {
      class="kw">return this.target;
   }
}